Big O Notation (λΉ μ€ νκΈ°λ²)
μ»΄ν¨ν° κ³Όνμλ μλ‘ κ°μ μκ° λ³΅μ‘λλ₯Ό μ½κ² μν΅ν λͺ©μ μΌλ‘ μλ£κ΅¬μ‘°μ μκ³ λ¦¬μ¦μ ν¨μ¨μ±μ κ°κ²°νκ³ μΌκ΄λ μΈμ΄λ‘ μ€λͺ νκΈ° μν΄ μνμ κ°λ μ μ°¨μ©νλ€. μ΄λ° κ°λ μ νμνν κ²μ΄ λΉ μ€ νκΈ°λ²μ΄λ©°. μ΄κ²μ μ¬μ©ν΄μ¬ μ£Όμ΄μ§ μκ³ λ¦¬μ¦μ ν¨μ¨μ±μ μ½κ² λΆλ₯νκ³ μ΄ν΄μν¬ μ μλ€. κ°λ¨νκ² λ§νμλ©΄ μκ³ λ¦¬μ¦μ ν¨μ¨μ±μ λΆμνκΈ° μν΄ μ»΄ν¨ν° 곡νμλ€μ΄ μ°λ κ°μ₯ κΈ°λ³Έμ μΈ λꡬ μ€ νλμ΄λ€.
λΉ μ€λ νΉμ λ°©μμΌλ‘ μκ³ λ¦¬μ¦μ νμν λ¨κ³ μλ₯Ό κ³ λ €ν¨μΌλ‘μ¨ μΌκ΄μ±μ μ μ§νλ€. κ·Έλ¦¬κ³ λ¨μν μκ³ λ¦¬μ¦μ νμν λ¨κ³ μλ§ μλ €μ£Όμ§ μλλ€. λ°μ΄ν°κ° λμ΄λ λ λ¨κ³ μκ° μ΄λ»κ² μ¦κ°νλμ§ μ€λͺ νλ€.
λΉ μ€ μΉ΄ν κ³ λ¦¬
O(N) : μ νμκ°μ κ°λ μκ³ λ¦¬μ¦. λ°μ΄ν° μ€κ°κ° μ±λ₯μ μν₯μ μ€λ€. μ ννλ λ°μ΄ν°κ° λμ΄λ λ μ νν κ·Έ λ°μ΄ν°μ λΉλ‘ν΄μ λ¨κ³ μκ° μ¦κ°νλ μκ³ λ¦¬μ¦μ νμ΄λ€.
O(1) : μμ μκ°μ κ°λ μκ³ λ¦¬μ¦. "κ°μ₯ λΉ λ₯Έ" μκ³ λ¦¬μ¦ μ νμΌλ‘ λΆλ₯. λ°μ΄ν°κ° λμ΄λλ λ¨κ³μ μκ° μ¦κ°νμ§ μλλ€.
O(logN) : "μ€ λ‘κ·Έ N". λ‘κ·Έ μκ°μ μκ° λ³΅μ‘λ. λ°μ΄ν°κ° λ λ°°λ‘ μ¦κ°ν λλ§λ€ ν λ¨κ³μ λμ΄λλ μκ³ λ¦¬μ¦μ μ€λͺ νλ λΉ μ€.
O(n²) : μ΄μ°¨μκ° μκ³ λ¦¬μ¦. nμ΄ μ¦κ°ν λλ§λ€ λ¨κ³ μκ° n² λ§νΌ λμ΄λλ€κ³ 보면λλ€. κ°μ΄ nκ° μ΄λ―λ‘ n² κ° νμνλ€.
O(n log n) : λ°°μ΄μ μμκ° nκ° μΌ λ μ λ ¬μ νμν λ¨κ³μλ n x logNμ΄λ€.
O(2α΄Ί) : κ°μ₯ λλ¦° λΉ μ€. O(logN)μ λ°λμ΄λ€. λ°μ΄ν°κ° 1μ© μ»€μ§ λ μκ³ λ¦¬μ¦μ νμν λ¨κ³μλ λλ΅ 2λ°°μ© λμ΄λλ κ².
λΉ μ€ νκΈ°λ² μμ
O(N) : for문
O(1) : Stack (push, pop)
O(logN) : μ΄μ§ κ²μ
O(n²) : μ΄μ€λ°λͺ©λ¬Έ, μ½μ μ λ ¬, λ²λΈμ λ ¬,μ νμ λ ¬
O(n log n) : ν΅ μ λ ¬, λ³ν©μ λ ¬, νμ λ ¬
O(2α΄Ί) : νΌλ³΄λμΉ μμ΄. (μνΈν¬λ컀문μ )
'κ°λ° > π¬ μ½λ©ν μ€νΈ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[leetCode/Javascript] 2363. Merge Similar Items (0) | 2024.02.27 |
---|---|
[leetCode/Javascript] 1572. Matrix Diagonal Sum (0) | 2024.02.13 |
[leetCode/Javascript] 2418. Sort the People (1) | 2024.02.11 |
[LeetCode/Javascript] 216. Combination Sum III (0) | 2024.02.05 |
[leetCode/javascript] 1071. Greatest Common Divisor of Strings (0) | 2024.02.02 |