C++ STL 算法:删除算法(3)unique、unique_copy

来源:互联网 发布:javahome的作用 知乎 编辑:程序博客网 时间:2024/06/05 08:45
1、unique(b,e)//把重复的元素删掉,只保留一个
unique(ilist.begin(),ilist.end());
2、unique(b,e,p)//符合p条件的删掉
pos = unique(ilist.begin(), ilist.end(), greater<int>());//删掉比前一个数小的元素
3、unique_copy(b1,e1,b2)
unique_copy(ilist.begin(),ilist.end(),ostream_iterator<int>(cout, " "));
4、unique_copy(b1,e1,b2,p)
bool differenceOne(int elem1, int elem2)
{
return elem1 + 1 == elem2 || elem1 - 1 == elem2;
}
unique_copy(ilist.begin(), ilist.end(),ostream_iterator<int>(cout, " "),differenceOne);//相邻的删掉
0 0