File tree Expand file tree Collapse file tree 2 files changed +46
-3
lines changed
Expand file tree Collapse file tree 2 files changed +46
-3
lines changed Original file line number Diff line number Diff line change 33
44class Solution :
55 """
6+ ํ์ด:
7+ - nums๋ฅผ set์ผ๋ก ๋ณํํ๋ฉด ์ค๋ณต์ด ์ ๊ฑฐ๋๋ค.
8+ - set์ ๊ธธ์ด์ ์๋ณธ ๋ฆฌ์คํธ์ ๊ธธ์ด๊ฐ ๋ค๋ฅด๋ฉด ์ค๋ณต์ด ์กด์ฌํ๋ค๋ ๋ป.
9+
610 TC: O(n)
7- - set(nums): n๊ฐ ์์๋ฅผ ํด์์
์ ์ฝ์
, ๊ฐ ์ฝ์
ํ๊ท O(1) โ O(n)
8- - len()์ ๋ด๋ถ size ํ๋ ๋ฐํ์ด๋ฏ๋ก O(1)
11+ - set(nums): ๋ฆฌ์คํธ์ ๋ชจ๋ ์์๋ฅผ ์ํํ๋ฉด์ set์ ์ฝ์
. O(n)
12+ - set ์ฝ์
์ ํด์ ๊ธฐ๋ฐ์ด๋ผ ํ๊ท O(1), n๊ฐ ์์๋๊น O(n)
13+ - len(set(nums)): set์ ๊ธธ์ด ์กฐํ. O(1)
14+ - len(nums): ๋ฆฌ์คํธ์ ๊ธธ์ด ์กฐํ. O(1)
15+ - ์ข
ํฉ: O(n) + O(1) + O(1) = O(n)
916
1017 SC: O(n)
11- - set์ด ์ต๋ n๊ฐ ์์๋ฅผ ์ ์ฅ
18+ - set(nums): ์ค๋ณต์ด ์๋ ๊ฒฝ์ฐ ์ต๋ n๊ฐ์ ์์๋ฅผ ์ ์ฅ. O(n)
19+ - ๊ทธ ์ธ ๋ณ์ ์์
1220 """
1321 def containsDuplicate (self , nums : List [int ]) -> bool :
1422 return len (set (nums )) != len (nums )
Original file line number Diff line number Diff line change 1+ from typing import List
2+
3+
4+ class Solution :
5+ """
6+ ํ์ด:
7+ - ๋ฐฐ์ด์ ํ ๋ฒ ์ํํ๋ฉด์, ๊ฐ ์ซ์์ ๋ํด
8+ "๋์ ๋ํด์ target์ด ๋๋ ์ง(complement)"์ด
9+ ์ด๋ฏธ ๋ฑ์ฅํ๋์ง๋ฅผ dict๋ก ํ์ธํ๋ค.
10+ - dict์ {์ซ์: ์ธ๋ฑ์ค}๋ฅผ ์ ์ฅํด๋๋ฉด, complement ์กฐํ๊ฐ O(1)์ด๋ฏ๋ก ์ ์ฒด O(n).
11+ - complement๋ฅผ ๋จผ์ ํ์ธํ๊ณ , ๊ทธ ๋ค์์ ํ์ฌ ์ซ์๋ฅผ
12+ dict์ ๋ฃ๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๊ฐ์ด ๋ ๋ฒ ๋์ค๋ ๊ฒฝ์ฐ
13+ (์: [3,3], target=6)์๋ ์ ์ ๋์ํ๋ค.
14+
15+ TC: O(n)
16+ - for ๋ฃจํ: nums์ ๋ชจ๋ ์์๋ฅผ ์ต๋ ํ ๋ฒ ์ํ. O(n)
17+ - complement ๊ณ์ฐ (target - num): O(1)
18+ - dict์์ complement ์กด์ฌ ์ฌ๋ถ ํ์ธ (in ์ฐ์ฐ): ํด์ ๊ธฐ๋ฐ์ด๋ผ ํ๊ท O(1)
19+ - dict์ ํ์ฌ ์ซ์ ์ฝ์
: ํ๊ท O(1)
20+ - ์ต์
์ ๊ฒฝ์ฐ(๋ต์ด ๋ง์ง๋ง ์): n๋ฒ ๋ฐ๋ณต. ์ต์ ์ ๊ฒฝ์ฐ(๋ต์ด ์ฒซ ๋ ์์): 2๋ฒ ๋ฐ๋ณต
21+
22+ SC: O(n)
23+ - nummap(dict): ์ต์
์ ๊ฒฝ์ฐ n-1๊ฐ์ ์์๋ฅผ ์ ์ฅ (๋ง์ง๋ง ์์ ์ง์ ๊น์ง ๋ค ๋ฃ์). O(n)
24+ - complement, i, num: ์
๋ ฅ ํฌ๊ธฐ์ ๋ฌด๊ดํ ์์. O(1)
25+ """
26+ def twoSum (self , nums : List [int ], target : int ) -> List [int ]:
27+ nummap = dict ()
28+
29+ for i , num in enumerate (nums ):
30+ complement = target - num
31+
32+ if complement in nummap :
33+ return [nummap [complement ], i ]
34+
35+ nummap [num ] = i
You canโt perform that action at this time.
0 commit comments