Other.手写unique
unique函数的功能:unique() 函数可以在序列中原地移除重复的元素,相邻重复元素只保留第一个。这就要求被处理的序列必须是正向迭代器所指定的。在移除重复元素后,它会返回一个正向迭代器作为新序列的结束迭代器。可以提供一个函数对象作为可选的第三个参数,这个参数会定义一个用来代替 == 比较元素的方法。
思路:
- 利用
store_index型双指针可以实现 - 两根指针,一根是
store_index,另外一根是遍历指针i,逐个往后扫描,如果符合条件,就把当前i指向的元素放入store_index指向的位置当中,并且将store_index往后移动一位。代码:
```cpp vector:: iterator unique(vector &a){ int store_index = 0; for(int i = 0; i < a.size(); i ++) 
return a.begin() + store_index; }if(i == 0 || a[i] != a[i - 1])a[store_index ++ ] = a[i];
 
```
