Fundamental/Algorithm
최소 비용 신장 트리 알고리즘 간략 정리
제이널
2021. 11. 21. 09:44
목차
1. 신장 트리(Spanning Tree)
2. Kruskal 알고리즘
3. Prim 알고리즘
1. 신장 트리(Spanning Tree)
신장 트리는 그래프 내 정점이 최소의 간선으로 모든 정점이 연결되어 있는 트리로, 사이클이 없는 그래프입니다.
신장 트리에 n 개의 정점이 있다면, 항상 n-1 개의 간선이 존재합니다.
최소 비용 신장 트리는 간선들의 비용 합이 최소가 되는 신장 트리를 뜻합니다.
대표적인 알고리듬으로는 Kruskal 알고리듬과 Prim 알고리듬이 있습니다.
2. Kruskal 알고리듬
전체 간선 중 비용이 낮은 간선을 우선적으로 선택해서 모든 정점을 사이클이 없도록 연결하는 방법으로, 간선의 수가 적을 때 적합합니다.
3. Prim 알고리듬
Kruskal과 달리, 시작 정점으로부터 인접한 간선 중 최소 비용의 간선을 선택하면서 모든 정점들을 이어나가는 알고리듬으로, 간선의 수가 많을 때 적합합니다.