#include <iostream>
#include <vector>
#include <set>
// 定义一个去重函数,输入为一个整数向量,输出为去重后的整数向量
std::vector<int> removeDuplicates(const std::vector<int>& input) {
// 使用 set 来存储唯一的元素,set 会自动去重并排序
std::set<int> uniqueElements(input.begin(), input.end());
// 将 set 中的元素重新放回 vector 中
std::vector<int> result(uniqueElements.begin(), uniqueElements.end());
return result;
}
int main() {
// 示例输入
std::vector<int> input = {1, 2, 2, 3, 4, 4, 5};
// 调用去重函数
std::vector<int> output = removeDuplicates(input);
// 输出结果
for (int num : output) {
std::cout << num << " ";
}
return 0;
}
removeDuplicates 函数:该函数接收一个 std::vector<int> 类型的参数,并返回一个去重后的 std::vector<int>。std::set:std::set 是 C++ 标准库中的一个关联容器,它会自动去除重复元素并保持有序。我们将输入向量中的所有元素插入到 std::set 中,从而实现去重。std::set 转换回 std::vector:由于 std::set 是有序的,如果我们不需要顺序,可以直接使用 std::unordered_set。这里为了保持代码简单,我们直接将 std::set 中的元素复制回一个新的 std::vector。main 函数:在 main 函数中,我们定义了一个包含重复元素的向量,调用 removeDuplicates 函数进行去重,并输出去重后的结果。希望这段代码和解释对你有帮助!
上一篇:c++ 关键字
下一篇:c++队列的基本操作
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站