알고리즘의 동작 과정:
다익스트라 알고리즘의 특징
음수 간선이 존재하면 다익스트라를 사용할 수 없다. 다익스트라의 가정은 한번 방문한 정점은 최단 거리가 확정된다"는 것인데, 음수 가중치가 있으면 이 가정이 깨지기 때문
만약, 음수를 없애고 다익스트라를 사용한다면? (음수의 최댓값이 -100일때, 모든 간선에 100을 더해서 양수로 만든 다음 다익스트라 수행)
⇒ 그래도 불가, 최단 거리의 경로가 바뀔 수 있음. 간선의 개수가 다르기 때문임
또한, 음수 사이클이 존재한다면 다익스트라를 사용할 수 없다.
구현
시간복잡도 : $O(ElogV)$