플로이드 와샬(Floyd Warshall) 알고리즘

Kim Yuhyeon·2023년 8월 11일
0

알고리즘 + 자료구조

목록 보기
119/161

핵심 아이디어

  • 모든 정점 ~ 모든 정점으로 최단 경로 구할 때 사용
  • 거쳐가는 정점을 기준으로 최단 거리를 구하기!

코드

// k = 거쳐가는 노드, i = 출발 노드, j = 도착 노드
for(int k=0; k<N; k++)
{
	for(int i=0; i<N; i++)
    {
    	for(int j=0; j<N; j++)
        {
        	if (d[i][j] > d[i][k] + d[k][j])
            	d[i][j] = d[i][k] + d[k][j];
        }
    }
}

참고 블로그

(C++) 플로이드 와샬 Floyd Warshall (+ 최단 경로 알고리즘 비교)
나동빈님 블로그

0개의 댓글