File tree Expand file tree Collapse file tree 1 file changed +52
-0
lines changed Expand file tree Collapse file tree 1 file changed +52
-0
lines changed Original file line number Diff line number Diff line change 1+ from typing import List
2+
3+
4+ """
5+ distinct
6+ 두 배열의 차이 -> 순회를 어떻게? -> 리스트 > 해시테이블 (t)
7+
8+ # Sol 1
9+
10+ 시간 복잡도: O(n)
11+ - 1. Set 생성: O(n)
12+ - 2. 반복문 + 해시셋 검사: O(n) + O(1)
13+
14+ 공간 복잡도: O(n)
15+
16+ # Sol 2
17+
18+ 시간 복잡도: O(n)
19+ - 1. 0부터 n까지의 전체 합 계산: O(1)
20+ - 2. nums 배열 요소들의 합 계산: O(n)
21+ - 3. 차이가 사라진 숫자: O(1)
22+
23+ 공간 복잡도: O(1)
24+
25+ """
26+
27+
28+ # Sol 1)
29+ class Solution :
30+ def missingNumber (self , nums : List [int ]) -> int :
31+
32+ table = set (nums )
33+
34+ for i in range (0 , len (nums ) + 1 ):
35+ if i not in table :
36+ return i
37+ else :
38+ continue
39+
40+
41+ # Sol 2)
42+ class Solution :
43+ def missingNumber (self , nums : List [int ]) -> int :
44+ n = len (nums )
45+
46+ # 0부터 n까지의 전체 합 (가우스 공식)
47+ sum_total = n * (n + 1 ) // 2
48+
49+ # nums 배열 요소들의 합
50+ sum_nums = sum (nums )
51+
52+ return sum_total - sum_nums
You can’t perform that action at this time.
0 commit comments