217. Contains Duplicate
At a Glance
- Topic: Array
- Pattern: Hash Set
- Difficulty: Easy
- LeetCode: 217
Problem Statement
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
Explanation:
The element 1 occurs at the indices 0 and 3.
Example 2:
Input: nums = [1,2,3,4]
Output: false
Explanation:
All elements are distinct.
Example 3:
Input: nums = [1,1,1,3,3,4,3,2,4,2]
Output: true
Constraints:
1 <= nums.length <= 105
-109 <= nums[i] <= 109Approach & Solution Steps
Use a hash set to store seen numbers. Iterate through the array; if a number is already in the set, return true. Otherwise, add it and continue.
Optimal JS Solution
function containsDuplicate(nums) {
const set = new Set();
for (const num of nums) {
if (set.has(num)) return true;
set.add(num);
}
return false;
}Edge Cases & Pitfalls
- Always consider empty or null inputs.
- Watch out for off-by-one index errors.
Mark this page when you finish learning it.
Last updated on
Spotted something unclear or wrong on this page?