[Algorithm] 35강 : 크루스칼 알고리즘의 정의와 구현

크루스칼 알고리즘 1.1 신장 트리란? 그래프에서 모든 노드를 포함하면서 사이클이 존재하지 않는 부분 그래프를 의미한다. 모든 노드가 포함되어 서로 연결되면서 사이클이 존재하지 않는다는 조건은 트리의 조건이기도 하다. 1.2 최소 신장 트리 N개의 도시가 존재하는 상황에서 두 도시 사이에 도로를 놓아 전체 도시가 서로 연결될 수 있게 도로를 설치하는 경우를 예시로 든다. 1.3 크루스칼 알고리즘이란? 대표적인 최소 신장 트리 알고리즘이다. 그리디 알고리즘으로 분류된다. 구체적인 동작은 다음과간다 간선 데이터를 비용에 따라 오름차순으로 정렬 간선을 하나씩 확인하며 현재의 간선이 사이클을 발생시키는지 확인 사이클이 발생하지 않는 경우 최소 신장트리에 포함시킨다. 사이클이 발생하는 경우 최소 신장 트리에 포함..