首页 > 代码库 > std::unique

std::unique

 类属性算法unique的作用是从输入序列中“删除”所有相邻的重复元素

该算法删除相邻的重复元素,然后重新排列输入范围内的元素,并且返回一个迭代器(容器的长度没变,只是元素顺序改变了),表示无重复的值范围得结束。

 

 1 template <class ForwardIterator> 2   ForwardIterator unique (ForwardIterator first, ForwardIterator last) 3 { 4   if (first==last) return last; 5  6   ForwardIterator result = first; 7   while (++first != last) 8   { 9     if (!(*result == *first))  // or: if (!pred(*result,*first)) for version (2)10       *(++result)=*first;11   }12   return ++result;13 }

 

std::unique