다익스트라는 최단거리를 구하는 알고리즘으로 현재 노드에서 가장 짧은 경로로 가는 노드를 선택하는 것으로 그리디 알고리즘으로 분류됩니다.
현재 노드에서 가장 짧은 경로의 노드를 찾는 과정은 배열 혹은 우선순위 큐를 사용합니다. 배열을 사용할 경우 노드가 N개일 경우 O(N^2)의 시간복잡도, 우선순위 큐는 O(nlogn)의 시간복잡도를 가집니다. (n개의 데이터를 넣는 과정 포함)
다익스트라 알고리즘은 주로 네비게이션이나 지도 앱 등에서 최단거리를 찾을 때 사용됩니다. 다만 실제 사용하는 앱의 경우 도로의 교통 상황, 고속도로 등에 따라서 가중치가 달라질 수 있습니다.
O(N^2)
등의 문자 추가 시 api 요청이 처리되지 않음