-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path217. Contains Duplicate.cpp
42 lines (31 loc) · 1.09 KB
/
217. Contains Duplicate.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*
Link: https://leetcode.com/problems/contains-duplicate/
Given an array of integers, find if the array contains any duplicates.
Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.
Example 1:
Input: [1,2,3,1]
Output: true
Example 2:
Input: [1,2,3,4]
Output: false
Example 3:
Input: [1,1,1,3,3,4,3,2,4,2]
Output: true
*/
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
int i, n = nums.size();
map<int, int> myMap; // using map to store the presence of the numbers
for(i = 0; i < n; i++) {
if(myMap[nums[i]]) // if the current number is already in map
return true; // return true
myMap[nums[i]] = 1; // else store the number, 1 as key value in map
}
return false; // if control reaches here implies all the elements occured only once in the vector
}
};
/*
TC = O(n)
SC = O(n)
*/