Algorithms
[BOJ] 1753 최단경로 Java 풀이
제목부터 최단경로다. 최단경로와 관련된 알고리즘으로는 대표적으로 1) 다익스트라, 2) 벨만포드 , 3) 플로이드 워셜 알고리즘이 있음을 알고 각각의 특징에 대해서도 익혀두는 것이 좋다. 이 문제는 먼저 간선의 범위가 자연수이고, 시작점이 하나로 주어지므로 Dijkstra 알고리즘을 적용하는 것이 좋다. 물론 벨만포드나 플로이드 워셜 알고리즘으로도 최단 경로를 구할 수는 있겠지만 각 알고리즘의 시간복잡도를 이 문제에 적용해보면 벨만포드는 O(E log V), 플로이드 워셜 O(N^3)이므로 시간 제한에 걸리게 된다. 다익스트라 알고리즘을 적용하면 크게 어렵지 않게 풀어낼 수 있는데, 구체적인 구현 방법에 대해 잘 기억하는 것이 중요할 수 있겠다. (최단 경로인데 간선의 가중치가 10 이하 자연수이므로, ..
2021. 3. 4.