κ·Έλž˜ν”„ μ•Œκ³ λ¦¬μ¦˜Intermediate

크루슀칼 μ΅œμ†Œ μ‹ μž₯ 트리

Union-Find 자료 ꡬ쑰λ₯Ό μ‚¬μš©ν•˜μ—¬ 간선을 μ •λ ¬ν•˜κ³  μˆœν™˜μ„ λ§Œλ“€μ§€ μ•ŠμœΌλ©΄ μΆ”κ°€ν•˜μ—¬ MSTλ₯Ό μ°ΎλŠ” νƒμš• μ•Œκ³ λ¦¬μ¦˜μž…λ‹ˆλ‹€. O(E log E) λ³΅μž‘λ„λ‘œ ν¬μ†Œ κ·Έλž˜ν”„μ— μ΅œμ μž…λ‹ˆλ‹€. λ„€νŠΈμ›Œν¬ 섀계(λͺ¨λ“  λ…Έλ“œλ₯Ό μ—°κ²°ν•˜λŠ” μ΅œμ†Œ λΉ„μš©), ν΄λŸ¬μŠ€ν„°λ§ μ•Œκ³ λ¦¬μ¦˜, 회둜 μ„€κ³„μ˜ μ‘μš©μ΄ μžˆμŠ΅λ‹ˆλ‹€. μ •λ ¬κ³Ό Union-Find의 μš°μ•„ν•œ 톡합을 λ³΄μ—¬μ€λ‹ˆλ‹€.

#graph#minimum-spanning-tree#greedy#union-find

Complexity Analysis

Time (Average)

O(E log E)

Expected case performance

Space

O(V)

Memory requirements

Time (Best)

O(E log E)

Best case performance

Time (Worst)

O(E log E)

Worst case performance

πŸ“š CLRS Reference

Introduction to Algorithmsβ€’Chapter 23β€’Section 23.2

Loading...

Implementation

Kruskal's Minimum Spanning Tree - Algorithm Vision