MST(Minimum Spanning Tree)
μ΅μμ μ₯νΈλ¦¬(MST)λ κ°μ€κ·Έλνμ μ΄ κ°μ 무κ²κ° μ΅μμΈ μ μ₯νΈλ¦¬λ₯Ό λ§νλ€.
μ μ₯νΈλ¦¬ : (μμ )νΈλ¦¬μΈ μ μ₯ λΆκ·Έλν
μ μ₯ λΆκ·Έλν : κ·Έλν Gμ λͺ¨λ μ μ λ€μ ν¬ν¨νλ λΆκ·Έλν
μ΅μμ μ₯νΈλ¦¬ μμ±
μΈμ΄ν΄ μμ±
T : κ°μ€κ·Έλν Gμ μ΅μμ μ₯νΈλ¦¬
e : Tμ μ‘΄μ¬νμ§ μλ Gμ κ°μ
C : eλ₯Ό Tμ μΆκ°νμ¬ νμ±λ μΈμ΄ν΄

Cμ λͺ¨λ κ°μ fμ λν΄, weight(f) <= weight(e)κ° μ±λ¦½νλ€.
λΆν μμ±
Gμ μ μ λ€μ λ κ°μ λΆλΆμ§ν© Uμ Vλ‘ λΆν
e : λΆν μ κ°λ‘μ§λ₯΄λ μ΅μ 무κ²μ κ°μ

κ°μ eλ₯Ό ν¬ν¨νλ Gμ μ΅μμ μ₯νΈλ¦¬κ° λ°λμ μ‘΄μ¬νλ€.
μ΅μμ μ₯νΈλ¦¬ μκ³ λ¦¬μ¦
Prim-Jarnik μκ³ λ¦¬μ¦
νμ μκ³ λ¦¬μ¦
λ¨μ μ°κ²° 무방ν₯ κ°μ€κ·Έλν
μμμ μ μ sλ₯Ό ννμ¬, sλ‘λΆν° μμνμ¬ μ μ λ€μ λ°°λμ λ£μ΄κ°λ©° λ°°λ μμμ μ΅μμ μ₯νΈλ¦¬μΈ Tλ₯Ό ν€μλκ°λ€. => sλ Tμ 루νΈκ° λλ€.
κ° μ μ vμ λΌλ²¨ d(v)λ₯Ό μ μ => d(v)λ λ°°λ μμ μ μ κ³Ό λ°°λ λ°μ μ μ μ μ°κ²°νλ κ°μ μ 무κ²

λ°°λ λ°μ μ μ λ€μ μ°μ μμ νμ μ μ₯
ν€ : 거리
μμ : μ μ
Q.replaceKey(e,k) : μμ eμ ν€λ₯Ό kλ‘ λ³κ²½νκ³ Q λ΄μ eμ μμΉλ₯Ό κ°±μ νλ€.
μκ°λ³΅μ‘λ :
μ°μ μμ νλ₯Όκ΅¬ binary heapμΌλ‘ ꡬν μ,
Prim-Jarnik μκ³ λ¦¬μ¦ μν μμ


Kruskal μκ³ λ¦¬μ¦
νμ μκ³ λ¦¬μ¦
μκ³ λ¦¬μ¦μ μν μ΄κΈ° μμ
λͺ¨λ μ μ μ κ°κ°μ λ μμ μΈ λ°°λμ λ£λλ€.
λ°°λλ°μ κ°μ λ€μ μ°μ μμ νμ μ μ₯
ν€ : 무κ²
μμ : κ°μ
λ°λ³΅μ κ° νμ μμ
λ κ°μ λ€λ₯Έ λ°°λ μμ μλμ μ κ°μ§ μ΅μ 무κ²μ κ°μ μ μ΅μμ μ₯νΈλ¦¬ Tμ ν¬ν¨νκ³ λ λ°°λμ νλλ‘ ν©μΉλ€.
λ°λ³΅μ΄ μλ£λλ©΄ μ΅μμ μ₯νΈλ¦¬ Tλ₯Ό ν¬ν¨νλ ν κ°μ λ°°λλ§ λ¨λλ€.

λ°λ³΅μ νμ λ§λ€ κ°μ (u, v)λ₯Ό μ΅μμ μ₯νΈλ¦¬ Tμ μΆκ°
μκ°λ³΅μ‘λ :
Kruskal μκ³ λ¦¬μ¦ μν μμ


Last updated