Skip to content

Commit 0d73a28

Browse files
committed
- Solution for "217. Contains Duplicate".
1 parent f291ae8 commit 0d73a28

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

contains-duplicate/ayosecu.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
from typing import List
2+
3+
class Solution:
4+
"""
5+
- Time Complexity: O(n), n = len(nums)
6+
- Space Complexity: O(N)
7+
- N = len(set_check) = The number of unique numbers
8+
- If there is no duplicated numbers, N = n
9+
"""
10+
def containsDuplicate(self, nums: List[int]) -> bool:
11+
set_check = set()
12+
13+
for num in nums:
14+
if num in set_check:
15+
return True
16+
else:
17+
set_check.add(num)
18+
19+
return False
20+
21+
tc = [
22+
([1, 2, 3, 1], True),
23+
([1, 2, 3, 4], False),
24+
([1,1,1,3,3,4,3,2,4,2], True)
25+
]
26+
27+
for i, (t, e) in enumerate(tc, 1):
28+
sol = Solution()
29+
result = sol.containsDuplicate(t)
30+
print(f"TC {i} is Passed!" if result == e else f"TC {i} is Failed! - Expected: {e}, Result: {result}")

0 commit comments

Comments
 (0)