코딩테스트/기본 알고리즘
2022. 2. 24.
최단 경로 (simple_dijkstra)
simple_dijkstra (간단한 다익스트라) 여러 노드가 있을 때, 측정한 노드에서 출발하여 다른 노드로 가는 각각의 최단경로를 구해주는 알고리즘 (음의 간선)이 없을때 정상적으로 작동한다. 그래서 현실세계의 길을 토대로 gps등에 주로 쓰이는 알고리즘이다. 기본적으로 가장 비용이 적은 노드를 찾아 갱신하므로 그리드 알고리즘으로 분류된다 알고리즘의 원리로는 출발 노드를 설정 최단 거리 테이블을 초기화 방문하지 않은 노드 중에서 최단거리가 가장 짧은 노드를 선택 해당 노드를 거쳐 다른 노드로 가는 비용을 계산하여 최단 거리 테이블 갱신 위 과정에서 3과 4를 반복 한단계를 완료하면 그 단계의 노드는 최단거리가 확실히 구해진것이다. 간단한 다익스트라 알고리즘은 O(v^2)의 시간복잡도를 가지는데 이때 ..