File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed
longest-consecutive-sequence Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Solution :
2
+ """
3
+ nums๋ฅผ ๋ด๋ฆผ์ฐจ์ sortํ๊ณ , ์ฐจ๋ก๋๋ก ๋ ๊ฐ์ ์ฐจ๊ฐ ๋ค์ ์ฐจ๊ฐ ๊ฐ๋ค๋ฉด + 1
4
+ ์ฒ์ ์ฐจ๋ diff ๋ณ์์ ์ ์ฅํ๊ณ , ์งํ๋๋ฉด์ diff๋ฅผ ์
๋ฐ์ดํธ
5
+ 200, 100, 4, 3, 2, 1
6
+
7
+ ์ฐ์๋ ์์ด์ด๋ผ๊ณ ํ์ฌ 1 ์ด์ธ์ ๋ค๋ฅธ ์๊ฐ ์ฌ ์ ์์ ๊ฒ์ด๋ผ๊ณ ํ๋จํ์์ง๋ง ์ฐจ์ด๊ฐ 1๋ก ๋์จ๋ค๋ ๊ฒ์ ํ์ธ
8
+
9
+ - TC
10
+ - set(nums) -> O(n)
11
+ - for -> O(n)
12
+ - while -> O(n)
13
+ - ์ ์ฒด -> O(n)
14
+ - SC
15
+ - num_set -> O(n)
16
+ - ๋ค๋ฅธ ๋ณ์๋ค -> O(1)
17
+ - ์ ์ฒด -> O(n)
18
+ """
19
+ def longestConsecutive (self , nums : List [int ]) -> int :
20
+ num_set = set (nums )
21
+ longest = 0
22
+
23
+ for num in num_set :
24
+ if num - 1 not in num_set :
25
+ k = 1
26
+
27
+ while num + k in num_set :
28
+ k += 1
29
+
30
+ longest = max (longest , k )
31
+ return longest
You canโt perform that action at this time.
0 commit comments