플로이드 워셜 알고리즘 플로이드 워셜 알고리즘은 '모든 지점에서 다른 모든 지점까지의 최단 경로를 모두 구해야 하는 경우'에 사용할 수 있는 알고리즘이다. 플로이드 워셜 알고리즘은 다익스트라 알고리즘처럼 단계마다 최단 거리를 가지는 노드에 대해 최단 거리 테이블을 갱신하는 방식으로 동작한다. 하지만 매 단계마다 최단 거리를 갖는 노드를 찾을 필요가 없다는 점이 다르다. 또한, 다익스트라 알고리즘은 1차원 리스트에 최단 거리 테이블을 저장했다면 플로이드 워셜 알고리즘은 2차원 리스트에 최단 거리 정보를 저장한다. 동작 방법 노드의 개수가 N개라고 하면, N번만큼의 단계를 반복하며 '점화식에 맞게' 2차원 리스트를 갱신하기 때문에 다이나믹 프로그램이라고 할 수 있다. $0