[Algorithm] 크루스칼 알고리즘(Kruskal Algorithm)
이번 포스팅에서는 크루스칼 알고리즘(Kruskal Algorithm)에 대해서 알아보겠습니다.
1.크루스칼 알고리즘(Kruskal Algorithm)이란?
정의
: 그래프 내의 모든 정점들을 가장 적은 비용으로 연결하기 위해 사용된다. 즉 최소 가중치 간선을 하나씩 선택해서 최소 신장 트리를 찾는 알고리즘
2.크리스칼 알고리즘(Kruskal Algorithm)의 과정
[1]
그래프 간선을 가중치 오름차순 정렬합니다.
[2]
a- b부터 선택합니다.
[3]
그 다음 a-d를 선택합니다.
[4]
그 다음 b-d를 선택하면 a-b-d 사이클이 형성되므로 선택하지 않습니다.
[5]
그 다음 b-c를 선택합니다. 선택된 간선의 갯수가, 정점의 갯수-1 만큼 되면 종료합니다.