2012-11-26 2 views
2

Dijkstra 's Algorithm을 구현할 과제가 있습니다. 그래프를 인접 행렬로 입력하는 스켈레톤 코드가 있지만 솔루션은 O (M- 에지), N- 정점 (N-vertices)에서 실행되어야한다고 말했습니다. 나는 PQ와리스트 구조가 이것을 어떻게 이루는 지 알지만, 필자의 경우에는 O (N^2) 솔루션을 피할 수있는 방법을 모르겠다. 행렬에서 벗어나는 유일한 방법은 모든 행과 열을 반복하는 것입니다 ... 맞습니까?Dijkstra의 알고리즘 : 인접 행렬의 복잡성 문제

답변

1

틀린. 귀하의 작업은 행렬의 모든 값에 대한 조작을 수행하는 것이 아니라 2 노드 간의 최단 경로를 찾는 것입니다. 귀하의 경우 매트릭스는 데이터를 보유하는 매체이며 알고리즘의 복잡성을 변경하지 않습니다. O(MlogN) 알고리즘은 자유롭게 사용할 수 있습니다. 여기 : Dijkstra's algorithm.

+0

고마워, 그게 내가 궁금해 한 말이다. – ahache

관련 문제