在C++中,可以使用STL库中的sort和unique函数来在排序中去重。首先使用sort函数对列表进行排序,然后再使用unique函数去除相邻重复元素。以下是一个示例代码:
#include <iostream>
#include <algorithm>
#include <vector>
int main() {
std::vector<int> numbers = {4, 2, 1, 3, 2, 1, 4, 3};
// 对列表进行排序
std::sort(numbers.begin(), numbers.end());
// 使用unique函数去重
auto last = std::unique(numbers.begin(), numbers.end());
// 删除重复元素后的尾部迭代器
numbers.erase(last, numbers.end());
// 打印去重后的列表
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
在以上代码中,首先对numbers列表进行排序,然后使用unique函数找到相邻重复元素的位置,最后通过erase函数删除这些重复元素,最终实现了在排序中去重的功能。