본문 바로가기
알고리즘

최소비용신장트리 -2

by 근즈리얼 2021. 3. 24.
728x90

kruskal 알고리즘

- 에지들을 가중치의 오름차순으로 정렬한다

- 에지들을 그 순서대로 하나씩 선택해간다. 단, 이미 선택된 에지들과 사이클을 형성하면 선택하지 않는다

- n-1개의 에지가 선택되면 종료한다.

- 가중치가 작은 순서대로 연결하면서 순환이 되면 연결하지 않는다.

 

순환여부 확인

- 초기 상태 : 선택된 에지 없음

- 각각의 연결요소를 하나의 집합으로 표현

{a}, {b}, {c}, {d}, {e}, {f}, {g}, {h}, {i}

-> {a}, {b}, {c}, {d}, {e}, {f}, {g, h}, {i}

-> {a}, {b}, {c, i}, {d}, {e}, {f}, {g, h}

-> {a}, {b}, {c, i}, {d}, {e}, {f, g, h}

-> {a, b}, {c, i}, {d}, {e}, {f, g, h}

-> {a, b}, {c, f, g, h, i}, {d}, {e}

-> {a, b}, {c, f, g, h, i, d}, {e}

-> {a, b, c, f, g, h, i, d}, {e}

-> {a, b, c, f, g, h, i, d, e}

 

수도코드

 

728x90

'알고리즘' 카테고리의 다른 글

최소비용신장트리 - 4  (0) 2021.03.24
최소비용신장트리 - 3  (0) 2021.03.24
최소비용신장트리-1  (0) 2021.03.23
그래프 알고리즘 - 4  (0) 2021.03.17
그래프 알고리즘 - 3  (0) 2021.03.17

댓글