2
2
contains-duplicate
3
3
μꡬμ¬ν: μ£Όμ΄μ§ μ
λ ₯μμ μ€λ³΅λ μμκ° μ‘΄μ¬νλμ§ μ¬λΆλ₯Ό μ°Έ/κ±°μ§μΌλ‘ λ°ν.
4
4
μ κ·Ό 1: κ°μ₯ λ¨μν λ°©λ²μ λ€λ₯Έ vector input_listλ₯Ό λκ³ , μ
λ ₯ λ°λ³΅λ§λ€ μ 체 μ€μΊν΄μ μ€λ³΅ μ¬λΆλ₯Ό 체ν¬νλ κ²μ
λλ€.
5
- input_listμ μ€μΊ λΉμ© O(N)μ λͺ¨λ μ
λ ₯μ λν΄ λ°λ³΅νλ―λ‘ μ΄ μκ° λ³΅μ‘λλ O(N^2)μ
λλ€.
6
- κ³΅κ° λ³΅μ‘λλ μ
λ ₯κ³Ό κ°μΌλ―λ‘ O(N)μ
λλ€.
5
+ input_listμ μ€μΊ λΉμ© O(N)μ λͺ¨λ μ
λ ₯μ λν΄ λ°λ³΅νλ―λ‘ μ΄ μκ° λ³΅μ‘λλ O(N^2)μ
λλ€.
6
+ κ³΅κ° λ³΅μ‘λλ μ
λ ₯κ³Ό κ°μΌλ―λ‘ O(N)μ
λλ€.
7
7
μ κ·Ό 2: μμμ μ‘΄μ¬ μ¬λΆλ₯Ό λ λΉ λ₯΄κ² 체ν¬νλ λ°©λ²μ setμ μ¬μ©νλ κ²μ
λλ€.
8
- setμ μ€λ³΅ μμλ₯Ό κ²μΆνλλ° ν¨κ³Όμ μΈ μλ£κ΅¬μ‘°λ‘, λ΄λΆ ꡬνμ λ°λΌ λΉμ©κ³Ό νΉμ±μ΄ λ€λ¦
λλ€.
9
- - C++μμ ordered_{set, map}μ μ λ ¬μ μ μ§νλ search treeλ₯Ό μ¬μ©νλ―λ‘ μΏΌλ¦¬μ μ½μ
, μμ λΉμ©μ΄ νκ· O(log(N))μ
λλ€.
10
- search treeμ ꡬνμ λ°λΌ μ΅μ
μ κ²½μ° μΏΌλ¦¬ λΉμ©μ΄ O(N)κΉμ§ μ¦κ°ν μ μμ΅λλ€.
11
- - C++μμ unordered_{set, map}μ ν΄μ λ° λ²ν· ꡬ쑰λ₯Ό μ¬μ©ν©λλ€. μ΄ κ²½μ°, νκ· μ μΈ μΏΌλ¦¬, μ½μ
, μμ λΉμ©μ O(1)μ
λλ€.
12
- μ°λ¦¬μ μꡬμ¬νμ μ
λ ₯μ λν λ³λμ μ 보λ₯Ό μ μ₯ν νμκ° μμΌλ―λ‘ unordered_setμΌλ‘ μ€λ³΅ κ²μ¬λ₯Ό μννλ κ²μ΄ λΉμ© ν¨μ¨μ μ
λλ€.
13
- μ΅μ
μ κ²½μ° λͺ¨λ μ
λ ₯μ νμΈν΄μΌ ν©λλ€. Nκ°μ μ
λ ₯μ λν΄ κ°κ° 쿼리μ μ
λ ₯μ μννλ―λ‘, μ΄ μκ° λ³΅μ‘λλ O(N), κ³΅κ° λ³΅μ‘λλ μ
λ ₯λ§νΌμΈ O(N)μ
λλ€.
8
+ setμ μ€λ³΅ μμλ₯Ό κ²μΆνλλ° ν¨κ³Όμ μΈ μλ£κ΅¬μ‘°λ‘, λ΄λΆ ꡬνμ λ°λΌ λΉμ©κ³Ό νΉμ±μ΄ λ€λ¦
λλ€.
9
+ - C++μμ ordered_{set, map}μ μ λ ¬μ μ μ§νλ search treeλ₯Ό μ¬μ©νλ―λ‘ μΏΌλ¦¬μ μ½μ
, μμ λΉμ©μ΄ νκ· O(log(N))μ
λλ€.
10
+ search treeμ ꡬνμ λ°λΌ μ΅μ
μ κ²½μ° μΏΌλ¦¬ λΉμ©μ΄ O(N)κΉμ§ μ¦κ°ν μ μμ΅λλ€.
11
+ - C++μμ unordered_{set, map}μ ν΄μ λ° λ²ν· ꡬ쑰λ₯Ό μ¬μ©ν©λλ€. μ΄ κ²½μ°, νκ· μ μΈ μΏΌλ¦¬, μ½μ
, μμ λΉμ©μ O(1)μ
λλ€.
12
+ μ°λ¦¬μ μꡬμ¬νμ μ
λ ₯μ λν λ³λμ μ 보λ₯Ό μ μ₯ν νμκ° μμΌλ―λ‘ unordered_setμΌλ‘ μ€λ³΅ κ²μ¬λ₯Ό μννλ κ²μ΄ λΉμ© ν¨μ¨μ μ
λλ€.
13
+ μ΅μ
μ κ²½μ° λͺ¨λ μ
λ ₯μ νμΈν΄μΌ ν©λλ€. Nκ°μ μ
λ ₯μ λν΄ κ°κ° 쿼리μ μ
λ ₯μ μννλ―λ‘, μ΄ μκ° λ³΅μ‘λλ O(N), κ³΅κ° λ³΅μ‘λλ μ
λ ₯λ§νΌμΈ O(N)μ
λλ€.
14
14
*/
15
15
16
- #include < vector>
17
16
#include < unordered_set>
17
+ #include < vector>
18
18
19
19
class Solution {
20
20
public:
@@ -25,9 +25,9 @@ class Solution {
25
25
int x = *it;
26
26
if (s.find (x) != s.end ())
27
27
return true ;
28
- else
29
- s.insert (x);
28
+ else
29
+ s.insert (x);
30
30
}
31
- return false ;
31
+ return false ;
32
32
}
33
- };
33
+ };
0 commit comments