Problem
Given an integer array nums
, return true
if any value appears at least twice in the array, and return false
if every element is distinct.
Example 1:
Input: nums = [1,2,3,1]
Output: true
Example 2:
Input: nums = [1,2,3,4]
Output: false
Example 3:
Input: nums = [1,1,1,3,3,4,3,2,4,2]
Output: true
**Constraints: **
1 <= nums.length <= 10^5
-10^9 <= nums[i] <= 10^9
Solution
/**
* @param {number[]} nums
* @return {boolean}
*/
var containsDuplicate = function(nums) {
const map = {}
for(const num of nums) {
// If we have seen this num before return true
if(map[num]) return true
map[num] = true
}
return false
};
Explain:
nope.
Complexity:
- Time complexity : O(n).