Floyd
-
Floyd Algorithm대학/알고리즘 2023. 4. 23. 15:38
* 배열의 인덱스가 1부터 시작한다고 가정합니다. ([1] = 1번째 와 같이 이해하기 쉽도록) - 알고리즘 정의 각 vertex에서 다른 모든 vertices의 최단 경로를 구하는 알고리즘. (mulit source-multi destination) 비슷한 역할을 수행하는 알고리즘에는 다익스트라 알고리즘이 있다. (single source-multi destination) 이 알고리즘을 이해하기 위해 몇가지 규칙을 만들자. D(k)[i][j]: vertex i 에서 vertex j로 가는 최단 경로를 저장. 단, 최단 경로를 생성하는 vertex는 {v1, v2, ..., vk}에서만 사용할 것. D(0)[i][j]: vertex i 에서 vertex j로 가는 최단 경로지만, 경유하는 vertex가 ..