(1) 그래프의 모든 간선을 가중치에 따라 내림차순으로 정리한다.
(2) 그래프에서 가중치가 가장 높은 간선을 제거한다. 이때 정점을 그래프에서 분리시키는 간선은 제거할 수 없다.
(3) 그래프에 n-1개의 간선만 남을 때까지 (2)를 반복한다.
(4) 그래프에 n-1개의 간선이 남게 되면 최소 비용 신장트리가 완성된다.2. Kruskal 알고리즘2
(1) 그래프의 모든 간선을 가중치에 따라 오름차순으로 정리한다.
(2) 그래프에서 가중치가 가장 작은 간선을 삽입한다. 이때 사이클을 형성하는 간선은 삽입할 수 없다. 이런 경우에는 그 다음으로 가중치가 작은 간선을 삽입한다.
(3) 그래프에 n-1개의 간선만 남을 때까지 (2)를 반복한다.
(4) 그래프에 n-1개의 간선이 남게 되면 최소 비용 신장트리가 완성된다.3. Prime 알고리즘
(1) 그래프에서 시작 정점을 선택한다.
(2) 선택한 정점에 부속된 모든 간선 중에서 가중치가 가장 작은 간선을 연결하여 트리를 확장한다.
(3) 이전에 선택한 정점과 새로 확장한 정점에 부속된 모든 간선 중에서 가중치가 가장 작은 간선을 삽입한다. 이때 사이클을 형성하는 간선은 삽입할 수 없다. 이런 경우에는 그 다음으로 가중치가 작은 간선을 선택하여 삽입한다.
(4) 그래프에 n-1개의 간선을 삽입할 때까지 (3)을 반복한다.
(5) 그래프의 간선이 n-1개가 되면 최소 비용 신장트리가 완성된다.
[자바로 배우는 쉬운 자료구조], 한빛아카데미