다익스트라 알고리즘다익스트라 알고리즘은 최단경로를 구하는 알고리즘 중 하나이다.다익스트라 알고리즘을 사용하면 하나의 노드에서 다른 모든 노드까지의 거리를 구할 수 있다. 다익스트라 알고리즘 원리다익스트라 알고리즘은 아래의 두 문장으로 정리될 수 있다.최단거리를 구할 노드에서 시작하여, 거리가 입력된 노드 중 최단거리가 가장 작은 노드를 돌아가며 선택한다.노드를 돌아가면서, 더 거리가 짧다면 값을 갱신한다. (a) 노드 0에서 거리를 기록한 후, 가장 가까운 노드인 1번노드를 선택한다(b) 선택된 1번노드를 기준으로, 거리가 최소가 되도록 갱신한다. 0번노드에서 3번 노드로 바로 갈 경우, 거리가 무한대이지만, 1번노드를 거쳐가면 거리가 6이므로 3번노드까지의 거리를 6으로 갱신한다. 가장 가까운 노드는 ..
[최단 경로] 다익스트라 알고리즘(Dijkstra Algorithm)
다익스트라 알고리즘다익스트라 알고리즘은 최단경로를 구하는 알고리즘 중 하나이다.다익스트라 알고리즘을 사용하면 하나의 노드에서 다른 모든 노드까지의 거리를 구할 수 있다. 다익스트라 알고리즘 원리다익스트라 알고리즘은 아래의 두 문장으로 정리될 수 있다.최단거리를 구할 노드에서 시작하여, 거리가 입력된 노드 중 최단거리가 가장 작은 노드를 돌아가며 선택한다.노드를 돌아가면서, 더 거리가 짧다면 값을 갱신한다. (a) 노드 0에서 거리를 기록한 후, 가장 가까운 노드인 1번노드를 선택한다(b) 선택된 1번노드를 기준으로, 거리가 최소가 되도록 갱신한다. 0번노드에서 3번 노드로 바로 갈 경우, 거리가 무한대이지만, 1번노드를 거쳐가면 거리가 6이므로 3번노드까지의 거리를 6으로 갱신한다. 가장 가까운 노드는 ..
2024.06.18