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