그리디 알고리즘 과정
크루스칼(Kruskal)과 그리디 알고리즘최소 신장트리는 사이클을 형성하지 않고 그래프 내의 모든 정점을 최소의 비용으로 연결하는 트리이다. 최소 신장 트리를 구축하는데 한 가지 중요한 제약은 최소 신장 트리 내에 사이클이 형성되어서는 안된다는 것이다. Show 크루스칼 알고리즘 동작 방식1) 그래프 내의 모든 간선의 가중치에 대해 오름차순으로 정렬한다. 2) 1)의 간선을 차례대로 순회하면서 최소 신장 트리에 추가한다. (사이클 생성 x) 그리디 과정으로 다시 보면 다음과 같다.
다익스트라(Dijkstra)와 그리디 알고리즘다익스트라 최단 경로 알고리즘은 그래프 내의 한 정점에서 다른 정점으로 가는 최단 경로를 구하는 알고리즘이다. 다익스트라 알고리즘 동작 방식
그리디 과정으로 다시 보면 다음과 같다.
표로 비교해보기
각 자세한 설명은 아래 링크에서 참고최소 신장트리 : 크루스칼(Kruskal) 알고리즘[알고리즘/ 그래프] 최소 스패닝 트리 - 크루스칼(Kruskal)과 프림(Prim) 알고리즘 (Java) 스패닝 트리 또는 신장 트리 어떤 무향 그래프의 스패닝 트리는 원래 그래프의 정점 전부와 간선의 부분 집합으로 구성된 부분 그래프이다. 이때 스패닝 트리에 포함된 간선들은 정점들을 트리 loosie.tistory.com 최단 경로 : 다익스트라(Dijkstra) 알고리즘[알고리즘] 그래프 다익스트라(Dijkstra) vs 플로이드 와샬(Floyd Warshall) [JAVA] Dijkstra 알고리즘은 하나의 정점에서 출발했을 때 다른 모든 정점으로의 최단 경로를 구하는 알고리즘이다. 그에 반해 Floyd Warshall 알고리즘은 모든 정점에서 모든 정점으로의 최단 경로를 구하는 loosie.tistory.com 'Dot Algo∙ DS > 알고리즘 개념' 카테고리의 다른 글
티스토리 뷰
|