728x90
μ λ ¬μ μ μ
$n$κ°μ μ«μλ₯Ό μ λ ₯λ°μ μ λ ₯ λ°μ
μ«μλ€μ μ μ 컀μ§λ μμλ μ μ μμμ§λ μμλ‘ λ€μ μ¬λ°°μ΄νμ¬ μΆλ ₯νλ κ²
μ νμ λ ¬
- νμ¬ μν©μμ κ°μ₯ μκ±°λ κ°μ₯ ν° μ«μλ₯Ό μ ννμ¬ μ¬λ°°μΉνλ μμ΄λμ΄μ μκ³ λ¦¬μ¦
- μνμκ°: $_{n}\mathrm{C}_{2}$ λλ $n(n-1) \over 2$ λλ $\sum_{i=1}^{N-1} i$
- μ΅μ : μ νμ λ ¬μ κ²½μ°μλ νμ μΌμ νκΈ° λλ¬Έμ μ΅μ μ κ²½μ°λ μλ€
- μ΅μ : μ νμ λ ¬μ κ²½μ°μλ νμ μΌμ νκΈ° λλ¬Έμ μ΅μ μ κ²½μ°λ μλ€
- μ¦, μκ°λ³΅μ‘λλ
$O(n^2)$ - Not Stable μ λ ¬μ
μ½μ μ λ ¬
- Key κ°μ μ λ ¬λ λ°°μ΄μ μλ§μ μμΉμ μ½μ νμ¬ μ λ ¬λ¬Έμ λ₯Ό νΈλ μκ³ λ¦¬μ¦
$T(n) = c_{1}n+c_{2}(n-1)+c_{3}(n-1)+ c_{4}\sum_{j=2}^n t_{j}+c_{5}\sum_{j=2}^n (t_{j}-1)+c_{6}\sum_{j=2}^n (t_{j}-1)+c_{7}(n-1)$
- μ΅μ : λ°°μ΄μ΄
μ΄λ―Έ μ λ ¬λ κ²½μ°, $t_{j} = 1$ - μ΅μ
: λ°°μ΄μ΄
λ°λμμλ‘ μ λ ¬λμ΄ μλ κ²½μ° - νκ· : μ΄λ―Έ μ λ ¬μ΄ λμ΄μλ κ²½μ°λ μ μκΈ° λλ¬Έμ κ²°κ΅ μκ°λ³΅μ‘λλ
$O(n^2)$ - Stable μ λ ¬μ
ν©λ³μ λ ¬
- μ΄λ―Έ μ λ ¬λ λ κ°μ λ°°μ΄μ μ λ ₯μΌλ‘ λ°μ μ λ ¬λ νλμ λ°°μ΄μ μΆλ ₯νλ μ λ ¬ μκ³ λ¦¬μ¦
- μ΅μ ,μ΅μ
, νκ· : λͺ¨λ λμΌνκ²
$O(NlogN)$μ μκ°λ³΅μ‘λλ₯Ό κ°μ§λ€. - Stable μ λ ¬μ
νμ λ ¬
- μ λ ₯λ°μ μ«μλ₯Ό νκ΅¬μ‘°λ‘ λ§λ€μ΄ κ°μ₯ μκ±°λ ν° κ°μ μ°¨λ‘λ‘ λ½μλ΄μ΄ μ λ ¬λ¬Έμ λ₯Ό ν΄κ²°νλ μκ³ λ¦¬μ¦
- νμ μμλ₯Ό μ½μ νλ μνμκ° logN
- Heapify μ μνμκ°: νμ λμ΄κ° logNμ΄κΈ° λλ¬Έμ μ 체 μνμκ°μ $O(logN)$
- μ¦, heapify νΈμΆλ§λ€ logn, κ°μΆμΆνμλ nμ΄λ―λ‘ μκ°λ³΅μ‘λλ
$O(nlogn)$μ΄λ€. - Not Stable μ λ ¬μ
ν΅μ λ ¬
- ν΅μ λ ¬μ pivotκ³Ό partitionμ μ΄μ©νμ¬ ν¬κΈ°κ° μμ μ«μλ κ³μ μμͺ½μΌλ‘ μ΄λμν€κ³ ν¬κΈ°κ° ν° μ«μλ κ³μ λ€μͺ½μΌλ‘ μ΄λμμΌ μ λ ¬λ¬Έμ λ₯Ό ν΄κ²°νλ μκ³ λ¦¬μ¦μ΄λ€.
- μ¬κ·νΈλ¦¬λ‘ μ λ°μ© λλ λ΄λ €μ€λ©΄μ λμ΄ logNλ§λ€ nλ²μ λΉκ΅κ° μ΄λ£¨μ΄μ Έ μκ°λ³΅μ‘λλ
$O(NlogN)$ - μ΅μ
μ κ²½μ°λ μ¬κ·νΈλ¦¬μ ννκ° νμͺ½μΌλ‘ μΉμ°μ³ μ§λ κ²½μ°
(μ¦, μ΄λ―Έ μ λ ¬λμ΄ μλ κ²½μ°μ λμμ νΌλ²μ μ€μ μ΄ κ°μ₯ μμκ°μ΄λ ν°κ°μΌλ‘ μ§μ λμμ κ²½μ°) - μ΅μ μ κ²½μ°λ₯Ό ν΄κ²°νκΈ° μν΄ νΌλ²μ μμμκ°μΌλ‘ μ€μ νλ λ°©λ²μ΄ μλ€.
- Not Stable μ λ ¬μ
μΆν μΆκ° μμ ···
728x90