File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed
Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * Solution 1. Set์ ํ์ฉํ๊ธฐ 1
3+ *
4+ * [Idea]
5+ * nums์์ ์ค๋ณต๋ ์์๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํด์ nums๋ฅผ ์ด์ฉํด์ ์ค๋ณต์ ํ์ฉํ์ง ์๋ ์๋ฃ๊ตฌ์กฐ์ธ Set์ ์์ฑ (numSet)
6+ * ์ค๋ณต๋ ์์๊ฐ ์์๋ค๋ฉด set์ ์์ฑํ ๋ ์ ๊ฑฐ๋์ด nums์ ๊ธธ์ด์ numSet์ ํฌ๊ธฐ๊ฐ ๋ค๋ฅผ ๊ฒ์ด๋ฏ๋ก ๋น๊ตํด์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ
7+ *
8+ * [Time Complexity]
9+ * O(n) (n: nums์ ์์ ๊ฐ์)
10+ * nums ๋ฐฐ์ด์ ์ด์ฉํด์ Set์ ๋ง๋๋ ๊ฒ์์ O(n)
11+ *
12+ * [Space Complexity]
13+ * O(n) (n: nums์ ์์ ๊ฐ์)
14+ * numSet์ ์์ฑํ๊ธฐ ์ํด ์ต๋ n๋งํผ์ ๊ณต๊ฐ์ด ์ถ๊ฐ๋ก ํ์ํจ
15+ */
16+ function containsDuplicate1 ( nums : number [ ] ) : boolean {
17+ const numsSet = new Set < number > ( nums ) ;
18+ return numsSet . size !== nums . length ;
19+ }
20+
21+ /**
22+ * Solution 2. Set์ ํ์ฉํ๊ธฐ 2
23+ *
24+ * [Idea]
25+ * ์ต์
์ ๊ฒฝ์ฐ๊ฐ ์๋ ๋ ์ฝ๊ฐ ๋ ๋น ๋ฅด๊ฒ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ ์ ์๋ ๋ฐฉ๋ฒ
26+ * ์ค๋ณต์ธ ์์๋ฅผ ๋ง์ฃผํ์๋ง์ ๋ฐ๋ก ๋ฐํํ๊ธฐ ๋๋ฌธ์ ์์ฃผ ์กฐ๊ธ ๋ ๋น ๋ฆ
27+ *
28+ * [Time Complexity]
29+ * O(n) (n: nums์ ์์ ๊ฐ์)
30+ *
31+ * [Space Complexity]
32+ * O(n) (n: nums์ ์์ ๊ฐ์)
33+ * ์์ฑ์๋ก ์ถ๊ฐํ๋ ๊ฒ๊ณผ add๋ก ์ถ๊ฐํ๋ ์ฐจ์ด ๋๋ฌธ์ธ์ง ์ค์ ๋ก ์ฌ์ฉ๋ ๋ฉ๋ชจ๋ฆฌ๋ Solution 1๋ณด๋ค ์กฐ๊ธ ๋ง๋ค.
34+ */
35+ function containsDuplicate2 ( nums : number [ ] ) : boolean {
36+ const numSet = new Set < number > ( ) ;
37+
38+ for ( const num of nums ) {
39+ if ( numSet . has ( num ) ) {
40+ return true ;
41+ }
42+ numSet . add ( num ) ;
43+ }
44+
45+ return false ;
46+ }
You canโt perform that action at this time.
0 commit comments