217. 存在重复元素(简单)
方法一:哈希表长度比较
思路
- 针对重复元素,很容易就想到 set。我们可以先将 nums 中的所有元素存入set,然后比较两个数据结构的长度,如果相等则说明不存在重复元素,反之存在。
代码
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> s;
for(int n : nums){
s.insert(n);
}
return s.size() != nums.size();
}
};
方法二:哈希表
思路
- 创建一个哈希表,每次将 nums 的元素存入前先判断哈希表里是否已经存在该元素,如果存在则说明有重复元素, 返回 true。
代码
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> s;
for(int n : nums){
if(s.find(n) != s.end())
return true;
s.insert(n);
}
return false;
}
};