1+ '''
2+ Approach:
3+ μ£Όμ΄μ§ λ°°μ΄μ λ λ² μννλ©° λͺ¨λ κ°λ₯ν μμ κ²μ¬ν©λλ€.
4+ κ° μμμ λν΄ μ΄νμ μμλ€κ³Όμ ν©μ΄ targetκ³Ό κ°μμ§ λΉκ΅νμ¬ μΌμΉνλ κ²½μ° μΈλ±μ€λ₯Ό λ°νν©λλ€.
5+
6+ Time Complexity:
7+ O(nΒ²)
8+ - Outer Loopμμ nλ² λ°λ³΅
9+ - Inner Loopμμ κ° idxλ§λ€ μ΅μ n-1λ² λ°λ³΅
10+
11+ Space Complexity:
12+ O(1)
13+ - κ²°κ³Όλ₯Ό μ μ₯νκΈ° μν΄ μμ κ°μ νμλ‘ νμ§λ§, μ
λ ₯κ°μ ν¬ν€μ λΉλ‘ν μλ‘μ΄ κ³΅κ° λΆμ
14+ '''
15+
16+ class Solution :
17+ def twoSum (self , nums : List [int ], target : int ) -> List [int ]:
18+ for idx , xnum in enumerate (nums ):
19+ for jdx in range (idx + 1 , len (nums )):
20+ if (xnum + nums [jdx ]) == target :
21+ return [idx , jdx ]
22+ return []
23+
24+ '''
25+ (κ°μ )
26+ Approach:
27+ βYou may assume that each input would have exactly one solution, and you may not use the same element twice.β
28+ λΌλ 문ꡬμμ νμ μ λ΅μ΄ μ‘΄μ¬νλ©° κ°μ μμλ₯Ό μ€λ³΅ μ¬μ©ν μ μμμ μ μ μμ΅λλ€.
29+ μ΄λ₯Ό λ°νμΌλ‘ κ° μμ numμ λν΄ (target - num)μ΄ μ΄μ μ λ±μ₯ν μ μ΄ μλμ§λ₯Ό ν΄μλ§΅μ μ΄μ©ν΄ λΉ λ₯΄κ² νμΈνλλ‘ κ°μ νμ΅λλ€.
30+ μ¦, μ€λ³΅μ΄ μκ³ λ΅μ΄ λ°λμ μ‘΄μ¬νλ€λ 쑰건 μλμμ, inner loop μμ΄ λ°λ‘ μ°ΎκΈ° μν΄ λμ
λ리λ₯Ό μ¬μ©ν κ²μ
λλ€.
31+
32+ Time Complexity:
33+ O(n)
34+ - 리μ€νΈλ₯Ό ν λ² μννλ©΄μ λμ
λ리λ₯Ό μ±μ λ£λ λ° κ±Έλ¦¬λ μ 체 μκ°
35+
36+ Space Complexity:
37+ O(n)
38+ - ν΄μλ§΅μ key-value μμΌλ‘ μ μ₯λλ 곡κ°
39+ '''
40+ class Solution :
41+ def twoSum (self , nums : List [int ], target : int ) -> List [int ]:
42+ hash_map = {}
43+ for i , num in enumerate (nums ):
44+ diff = target - num
45+ if diff in hash_map :
46+ return [hash_map [diff ], i ]
47+ hash_map [num ] = i
48+
49+
0 commit comments