방법 2 힙을 사용하여 구현은 어렵지만 빠르게 동작하는 코드 이번 방법은 최악의 경우에도 시간 복잡도 O(ElogV)를 보장할 수 있다.(V는 노드의 개수,E는 간선의 개수) 방법 1 에서는 매번 최단거리 테이블을 선형적으로(모든 원소를 앞에서부터 하나씩) 탐색해야 했다. 이 과정에서 O(V)의 시간이 걸렸다. 하지만 최단거리가 가장 짧은 노드를 단순히 선형적으로 찾는것이 아니라 더욱 빠르게 찾을수 있다면 시간 복잡도를 더 줄일 수 있다. 이 과정에서 힙 자료구조를 사용하게 된다. 힙을 사용하면 특정 노드까지의 최단 거리에 대한 정보를 힙에 답아서 처리하므로 출발 노드로부터 가장 짧은 노드를 더욱 빠르게 찾을 수 있다. 힙 자료 구조 힙 자료구조는 우선순위 큐를 구현하기 위하여 사용하는 자료구조 중 하나..