c++除去重复元素代码
时间: 2023-12-17 22:26:16 浏览: 44
以下是一种C++除去重复元素的代码实现:
```c++
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
vector<int> nums = {1, 2, 2, 3, 3, 3};
nums.erase(unique(nums.begin(), nums.end()), nums.end());
for (int num : nums) {
cout << num << " ";
}
return 0;
}
```
该代码使用了STL中的unique函数,将重复元素移到了vector的末尾,并返回一个指向新的逻辑结尾的迭代器,然后再使用erase函数将重复元素删除。最终输出的是去重后的vector中的元素。
相关问题
C++去除重复元素queue
引用中的代码展示了如何使用sort函数和unique函数去除数组中的重复元素。首先,使用sort函数对数组进行排序,然后使用unique函数得到去重后的结果。代码中的n表示去重后的元素个数。最后,将去重后的元素存入output向量中。
示例代码如下:
```
void remove_duplicates(queue<int>& q) {
vector<int> temp;
while (!q.empty()) {
temp.push_back(q.front());
q.pop();
}
sort(temp.begin(), temp.end());
temp.erase(unique(temp.begin(), temp.end()), temp.end());
for (int i = 0; i < temp.size(); i++) {
q.push(temp[i]);
}
}
```
除去数组中重复的元素c++
要除去数组中重复的元素,可以使用以下方法:
1. 创建一个新数组,用于存储除去重复元素后的数组。
2. 遍历原始数组,对每个元素进行判断是否已经在新数组中存在。
3. 如果不存在,则将该元素添加到新数组中。
4. 最终得到的新数组即为除去重复元素后的数组。
以下是一个示例代码,使用C语言实现了除去数组中重复元素的功能:
```
#include <stdio.h>
void removeDuplicates(int arr[], int size)
{
int i, j, k;
// 遍历原始数组
for (i = 0; i < size; i++)
{
// 检查是否已经存在于新数组中
for (j = 0; j < i; j++)
{
if (arr[i == arr[j])
break;
}
// 如果不存在,则将元素添加到新数组中
if (j == i)
{
arr[k = arr[i];
k++;
}
}
// 输出除去重复元素后的数组
for (i = 0; i < k; i++)
{
printf("%d ", arr[i]);
}
}
int main()
{
int arr[] = {1, 2, 3, 3, 4, 5, 6};
int size = sizeof(arr) / sizeof(arr<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [c\c++语言删除数组中重复元素](https://blog.csdn.net/weixin_66860713/article/details/122807649)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]