최단 경로(Shortest Path)는 말 그대로 가장 짧은 경로를 찾는 알고리즘입니다. 흔히 알고 있는 최단 경로 알고리즘은 다익스트라(Dijkstra)입니다. 플로이드 워셜(Floyd-Warshall) 알고리즘 등도 존재하지만, 본 포스팅에서는 다익스트라만 다루겠습니다. 다익스트라 최단 경로 알고리즘은 그리디 알고리즘으로 분류되며, 매 상황에서 가장 비용이 적은 노드를 선택해 임의의 과정을 반복하는 것입니다. 다익스트라 알고리즘 과정 1. 출발 노드 설정 2. 최단 거리 테이블 초기화 3. 방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택 4. 해당 노드를 거쳐 다른 노드로 가는 비용을 계산하여 최단 거리 테이블 갱신 5. 위 과정에서 3번과 4번을 반복 위와 같이 노드와 노드 간 거리(..