알고리즘
[C++] Kruskal 알고리즘 ( 최소 신장 트리, MST 알고리즘 )
크루스칼( Kruskal ) 알고리즘Kruskal 알고리즘은 최소 신장 트리( Minimal Spanning Tree )를 구하는 알고리즘입니다. 먼저, 신장 트리( Spanning Tree )는 그래프에 있는 모든 노드를 지나는 트리를 말합니다. 신장 트리는 N개의 정점을 가진 그래프에서 순환 구조가 없는 N-1개의 간선을 선택해서 만들 수 있습니다.위의 그래프에서는 다음과 같은 신장 트리를 찾을 수 있습니다.( 아래의 예보다 더 많은 신장 트리가 있습니다 ) 그리고, 최소 신장 트리( MST )는 여러 개의 신장 트리 중, 최소 거리( 가중치 )를 가진 신장 트리를 말합니다. 위의 오른쪽 이미지가 가장 작은 가중치를 가진 신장 트리입니다. 이러한 최소 신장 트리를 구하는 알고리즘의 하나가 K..
2024. 7. 3.