logo

알고리즘: 벨만 포드(Bellman-Ford) - 최단 경로 알고리즘

language-logoNodeJS

• 벨만-포드 알고리즘은 음수 가중치가 있는 그래프에서 단일 출발점에서 모든 정점까지의 최단 경로를 구할 수 있으며, 음수 사이클 존재 여부도 판별할 수 있다.
• 알고리즘은 모든 간선에 대해 `V-1`번 반복하여 최단 거리를 갱신하고, 추가 반복 시 값이 갱신되면 음수 사이클이 존재한다고 판단한다.
• 시간 복잡도는 $O(V \times E)$로, 간선 수가 많거나 정점이 많을 경우 느릴 수 있으며, 음수 가중치가 없을 때는 다익스트라 알고리즘이 더 효율적이다.
• 구현 예시로, [#11657. 타임머신] 문제를 통해 벨만-포드 알고리즘을 적용하여 각 도시별 최단 거리를 계산하고, 도달할 수 없는 도시는 -1로 표시한다.

thumbnail
북마크
공유하기
신고하기
3분 분량
조회수 131
profile-image김도환
4달 전
Copyright © 2025. Codenary All Rights Reserved.