Contains Duplicate Problem
Description
LeetCode Problem 217.
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:
1
2
Input: nums = [1,2,3,1]
Output: true
Example 2:
1
2
Input: nums = [1,2,3,4]
Output: false
Example 3:
1
2
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
Sample C++ Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
bool distinct = true;
map<int, int> ht;
for (int i = 0; i < nums.size(); i ++) {
int n = nums[i];
if (ht.find(n) == ht.end())
ht[n] = 0;
ht[n] ++;
if (ht[n] > 1) {
distinct = false;
}
}
return !distinct;
}
};