File tree Expand file tree Collapse file tree 1 file changed +35
-0
lines changed
product-of-array-except-self Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Solution :
2
+ def productExceptSelf (self , nums : List [int ]) -> List [int ]:
3
+ """
4
+ Intuition:
5
+ iλ²μ§Έ μΈλ±μ€μ κ°μ κ³μ°νκΈ° μν΄μλ
6
+ 0 ~ i-1 κΉμ§μ κ°κ³Ό i+1 ~ N κΉμ§μ κ°μ λͺ¨λ κ³±ν΄μΌ νλ€.
7
+ μ΄μ λμ κ³±μ μ μ₯νμ¬, κ³μ°νλ€.
8
+
9
+ Time Complexity:
10
+ O(N):
11
+ 리μ€νΈλ₯Ό 1λ² μννλ©° λ΅μ μ°ΎμΌλ―λ‘,
12
+ O(N)μ μκ°λ³΅μ‘λκ° μμλλ€.
13
+
14
+ Space Complexity:
15
+ O(N):
16
+ forward λ°°μ΄κ³Ό backward λ°°μ΄μ Nκ°μ μμλ₯Ό μ μ₯νλ―λ‘
17
+ O(N)μ 곡κ°λ³΅μ‘λκ° μμλλ€.
18
+
19
+ Key takeaway:
20
+ μ€μΊνμ¬ κ°μ μ μ₯ν΄λλ λ°©μμ μμ§νμ.
21
+ """
22
+ for_val = 1
23
+ back_val = 1
24
+ forward = []
25
+ backward = []
26
+ for i in range (len (nums )):
27
+ forward .append (for_val )
28
+ backward .append (back_val )
29
+
30
+ for_val *= nums [i ]
31
+ back_val *= nums [- (i + 1 )]
32
+ backward = backward [::- 1 ]
33
+
34
+ answer = [forward [i ] * backward [i ] for i in range (len (nums ))]
35
+ return answer
You canβt perform that action at this time.
0 commit comments