您的位置:首页 > 编程语言 > C语言/C++

C++使用STL::vector删除数组内的重复元素

2016-01-22 09:58 579 查看
假设有一组数组(字符数组,整数数组等),需要将里面重复的元素删除,一种比较方便的方法就是利用STL::vector,vector中定义了许多的成员函数,通过这一些成员函数的搭配可以方便的实现很多任务。

首先,对数组进行排序:

vector<int> sun;
//向sun添加元素
for (int i = 0; i < n; ++i){
sun.push_back(primes[i]);
}
sort(sun.begin(), sun.end());


其次,用erase与unique函数配合就可以将重复的元素从数组中删除:

sun.erase(unique(sun.begin(), sun.end()), sun.end());


earse的功能是删除指定范围内的所有函数

unique将相邻的重复的元素移到最后
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: