判断vector中存在重复
时间: 2023-08-02 11:07:47 浏览: 101
实现从vector中过滤重复的数据
5星 · 资源好评率100%
判断一个 vector 中是否存在重复元素,可以通过将 vector 元素放入一个 set 中,如果 set 的大小小于 vector 的大小,就说明 vector 中存在重复元素。
以下是示例代码:
```c++
#include <iostream>
#include <vector>
#include <set>
using namespace std;
bool hasDuplicate(vector<int>& nums) {
set<int> s(nums.begin(), nums.end());
return s.size() < nums.size();
}
int main() {
vector<int> nums = {1, 2, 3, 4, 5};
cout << hasDuplicate(nums) << endl; // 输出 0
nums.push_back(3);
cout << hasDuplicate(nums) << endl; // 输出 1
return 0;
}
```
在上述代码中,我们定义了一个名为 `hasDuplicate` 的函数,它接受一个 `vector<int>` 类型的参数,并返回一个布尔值。该函数的实现过程中,我们先将 vector 中的元素放入一个 set 中,然后比较 set 的大小和 vector 的大小是否相等,如果不相等则说明 vector 中存在重复元素,返回 true;否则返回 false。
阅读全文