[Algorithm / Java] ✒️ Dijkstra (다익스트라)
·
Algorithm & Data Structure/study
Dijkstra 알고리즘 다익스트라(Dijkstra) 알고리즘은 방향성을 가지는 그래프에서 최단거리를 구할 때 자주 쓰인다. 방향성을 가지는 그래프란 A에서 B노드로 이동은 가능하지만, B노드에서 A노드로는 이동할 수 없는 경우가 있는 그래프를 말한다. 즉, 노드 간의 연결된 간선이 방향과 거리 비용을 가지고 있고, 시작 노드에서 다른 노드들까지의 최단거리 비용을 구할 때 사용할 수 있다. Process 1. 거쳐 갈 혹은 시작할 노드를 방문 후 방문 처리한다. 2. 방문한 노드에서 이동할 수 있는 노드들을 탐색한다. 3. 탐색된 노드들의 계산된 거리 비용이 현재까지 저장된 최단거리보다 적을 경우 최단거리를 갱신한다. 4. 최단거리가 갱신된 노드들 중 가장 적은 거리를 가지는 노드로 이동 후 방문 처리한..