C++中的unique函数用于删除容器中相邻重复的元素,并返回一个指向新的逻辑结尾的迭代器。它将容器中相邻的重复元素移动到容器的末尾,并返回一个指向新的逻辑结尾的迭代器。
unique函数的使用方法如下:
#include <iostream>
#include <algorithm>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 2, 3, 3, 3, 4, 5, 5};
auto it = std::unique(vec.begin(), vec.end());
vec.erase(it, vec.end());
for (int i : vec) {
std::cout << i << " ";
}
return 0;
}
在上面的示例中,我们将一个包含重复元素的vector使用unique函数去除相邻的重复元素,并输出去重后的结果。unique函数会将相邻的重复元素移动到末尾,并返回一个指向新的逻辑结尾的迭代器,我们然后使用erase函数删除重复元素之后的部分。