Leetcode题解之 —— 存在重复元素

思路


思路一: HashMap

  • 存在则直接返回
  • 不存在则map.set

思路二: Set

  • Set处理后的长度是否等于处理前的长度

题解


HashMap:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/**
* @param {number[]} nums
* @return {boolean}
*/
var containsDuplicate = function(nums) {
const cache = new Map();

for (const num of nums) {
if (cache.has(num)) {
return true;
}
cache.set(num, num);
}

return false;
};

Set:

1
2
3
4
5
6
7
/**
* @param {number[]} nums
* @return {boolean}
*/
var containsDuplicate = function(nums) {
return new Set(nums).size !== nums.length;
};