Daily/Today I Learned
210122_TIL (μκ°λ³΅μ‘λ, μλ£κ΅¬μ‘° 볡μ΅)
joooing
2021. 1. 23. 05:05
λ°μν
π μ€λ ν μΌ
βοΈ Big-O νκΈ°λ² & μλ£κ΅¬μ‘° μ°κ΄μ§μ΄ μκ°ν΄λ³΄κΈ°
λΉ μ€(Big-O) νκΈ°λ²μ κ·Έλ₯ μκ³ λ¦¬μ¦μ΄ λμκ°λ μ΅μ μ μκ°μ΄κ³ , μμ..μ§μ.. λ±μ΄ μλ€λ κ², κ·Έλ¦¬κ³ λλ΅ μ΄λ€ μ½λκ° μ΄λμ λμ μκ°μ΄ 걸리λ ꡬλ μ λλ‘λ§ μκ³ μμλ€. λΉ μ€ νκΈ°λ²μ λν΄ μ’ λ κΉκ² λ€λ£¨λ μΈμ μ λ€μΌλ©΄μ μλ£κ΅¬μ‘°μ μ΄λ»κ² μ°κ΄λλμ§λ μμΈν λ°°μ μ μ λΈλ‘κΉ ν΄λλ κΈμ μΆκ°νκ³ , n^3μ μκ°λ λΉ μ€λ‘ νμνλ©΄ n^2λ‘ μ·¨κΈνλ€λ κ², κ·Έλ¦¬κ³ μ½λ©ν μ€νΈ λ¬Έμ λ₯Ό ν λ μκ°λ³΅μ‘λμ λν 쑰건μ λ³΄κ³ μ΄λ€ μλ£κ΅¬μ‘°λ₯Ό μ¨μ ν μ μλ λ¬Έμ μΈμ§ μμΌλ‘ ννΈλ₯Ό μ»μ μ μλ€λ κ²λ μκ² λμλ€.
βοΈ Data Structure 볡μ΅
μ΄λ² μ£Ό λμ λ°°μ λ μλ£κ΅¬μ‘°λ€(μ€ν, ν, μ°κ²°λ¦¬μ€νΈ ,ν΄μν μ΄λΈ, κ·Έλν, νΈλ¦¬, μ΄μ§νμνΈλ¦¬)μ νλ²μ© μκ°νλ©΄μ κ·Έλ €λ³΄κ³ , κ° κ΅¬μ‘°μ κ΄λ ¨λ λ©μλλ€μ νλ²μ© λ 볡μ΅νλ©° μμ±ν΄λ΄€λ€. νΉν ν΄μ ν μ΄λΈμ λͺ¨κ°μ½λ₯Ό νλ©΄μ λ€λ₯Έ λΆλ€μ μ΄λ€ μμΌλ‘ μ½λλ₯Ό μμ±νλ μ§ λ³Ό κΈ°νκ° μμλλ°, 보면μ μ λ§ λ°©λ²μ΄ λ€μνꡬλ νκ³ λκΌλ€. λλ bucketμΌλ‘ κ°μ²΄λ₯Ό μ¬μ©νκ³ ννμ κ·Έλ₯ μμ±κ³Ό κ°λ§ λ£μ΄μ€μ { key1:val1, key2:val2 } μ΄λ°μμΌλ‘ ꡬννλλ°, μ΄λ€ λΆμ bucketμ λ°°μ΄λ‘ μ¬μ©ν΄ [ {key1:val1}, {key2:val2} ] μ΄λ°μμΌλ‘ νμκΈ°λ νκ³ , μμ κ°μ²΄ bucket μμ κ°μ²΄ tupleμ λ£μ΄ { { key1: val1 }, { key2: val2 } } μ΄λ κ² νμ λΆλ κ³μ ¨λ€. νμ΄λΆκ³Ό μ²μ μ½λλ₯Ό μμ±ν λλ λ°°μ΄μ΄λ κ°μ²΄λ‘ ννν μλ μκ² λ€κ³ μ΄μΌκΈ°λ§ νκ³ νκ°μ§ λ°©λ²μΌλ‘λ§ μλν΄λ΄€μλλ°, λ€λ€ μ½λλ₯Ό 곡μ ν΄μ£Όμ λμ μ€μ μ½λλ‘ μμ±νμ λ μ΄λ€ λͺ¨μ΅μΈμ§ λ³Ό μ μμ΄ μ μ΅ν μκ°μ΄μλ€ :)
π κΈ°μ΅ν κ²
βοΈ λ°°μ΄ λ©μλ μκ°λ³΅μ‘λ
arr.filter : O(n)
arr.map : O(n)
arr.sort : O(n * log n)
βοΈ μΈμ νλ ¬
num * num μ μ₯κ³΅κ° νμ
μΈλ±μ€λ₯Ό μ§κ΄μ μΌλ‘ κ΄λ¦¬νκΈ° μν λ°©λ² 1) indexλ₯Ό 1λΆν° μμν΄λ²λ¦¬κ±°λ 2) (num+1) * (num+1) λ°°μ΄λ‘ κ΄λ¦¬ν μ μλ€.
π λ 곡λΆν κ²
βοΈ Github μ€λ₯ ν΄κ²°
βοΈ κΉμ΄, λλΉ μ°μ νμ
βοΈ heap(μ°μ μμν)
βοΈ μμ νμ νΈλ¦¬ κΈ μ½μ΄λ³΄κΈ°
λ°μν