https://gmlwjd9405.github.io/2018/08/28/algorithm-mst.html
[알고리즘] 최소 신장 트리(MST, Minimum Spanning Tree)란 - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
Spanning Tree : 그래프 내의 모든 정점을 포함하는 트리
최소 연결 부분 그래프이므로 간선의 수가 가장 적다.
DFS와 BFS를 사용해서 정점들을 찾기 위해 사용된 간선을 모은다.
위 그림처럼, n 개의 정점이 존재할 때 (n-1)개의 간선이 연결되어있다.
최소 신장 트리(MST : Minimum Spanning Tree)란,
간선의 가중치가 다를 때 최소 비용의 Spanning Tree를 선택하는 것을 말한다.
MST의 특징
1) 간선의 가중치의 합이 최소
2) n개의 정점에 대해 n - 1개의 간선만을 사용
3) 사이클이 포함되서는 안된다.
Prim MST 알고리즘이란,
시작 정점에서 출발하여 이전단계에서 만들어진 신장 트리를 확장한다.
크루스탈 알고리즘도 최소 신장 트리의 탐색에 사용된다.
프림 알고리즘 ( Prim's algorithm )
Table of Contents 개요 프림 알고리즘 O(V^2) 알고리즘 O(V^2) 코드 O(E log V) 알고리즘 O(E log V) 코드 문제 프림 알고리즘의 정당성 1. 개요 프림 알고리즘은 무향 연결 그래프가 주어질 때, '최소 스패닝.
www.weeklyps.com
'T' 그래프를 간선을 통해 방문을 한 노드들을 담는다.
이 T 그래프는 마지막 노드까지 담게되면 MST가 된다.
두 가지 방법으로 프림 알고리즘을 구현한다.
❗배열을 사용해 각 노드를 연결하는 최소 간선 가중치를 찾는다.
https://yabmoons.tistory.com/362
[ 프림 알고리즘 ] 개념과 구현방법 (C++)
이 글에서는 프림 알고리즘에 대해서 알아보고 어떤 경우에 사용할 수 있는 알고리즘인지, 어떻게 구현하는지 까지 알아보도록 하자. 1. 프림 알고리즘 ?? - 그래프 알고리즘은 Vertex라고 불리는
yabmoons.tistory.com
'Algorithm' 카테고리의 다른 글
C++ Sorting 알고리즘 (Bubble/Insertion/Selection/Merge/Quick/Shell) 개념 및 코드 정리 (0) | 2022.04.17 |
---|---|
다익스트라(Dijkstra) 알고리즘의 개념 (0) | 2022.03.21 |
[C++] BFS와 DFS 개념 정리 (0) | 2022.03.14 |
[C++] 구글폼 복수응답 날짜 별로 응답자 정리하는 프로그램 (0) | 2022.03.13 |
그리디 알고리즘(Greedy Algorithm)의 개념, 예제 코드 (0) | 2022.03.06 |