Skip to content

Commit 56b124e

Browse files
committed
Remove duplicate values solved in Python.
1 parent 5903a04 commit 56b124e

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

Sprint-1/Python/remove_duplicates/remove_duplicates.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,33 @@ def remove_duplicates(values: Sequence[ItemType]) -> List[ItemType]:
2323
unique_items.append(value)
2424

2525
return unique_items
26+
27+
28+
"""
29+
Time Complexity:
30+
31+
1 + 2 + 3 + ... + (n - 1) = n(n - 1)/2 = O(n²)
32+
33+
Space Complexity:
34+
35+
Even though we're just using .append(), the list grows linearly, so it is s O(n) space.
36+
37+
"""
38+
39+
#Optimal Solution
40+
41+
def remove_duplicates(values: Sequence[ItemType]) -> List[ItemType]:
42+
seen = set()
43+
unique_items = []
44+
45+
for value in values:
46+
if value not in seen:
47+
seen.add(value)
48+
unique_items.append(value)
49+
50+
return unique_items
51+
52+
'''
53+
Time Complexity: O(n)
54+
Space Complexity: O(n) storing unique_items and seen
55+
'''

0 commit comments

Comments
 (0)