File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed
Sprint-1/Python/remove_duplicates Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff 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+ '''
You can’t perform that action at this time.
0 commit comments