void Graph::AllLengths (const int n) {
for (int i=0; i<n; i++) // a = 인접행렬
for (int j=0; j<n; j++)
a[i][j] = length[i][j];
for (int k=0; k<n; k++) // 제일 큰 정점의 index가 k인 경로에 대해
for (i=0; i<n; i++)
for (int j=0; j<n; j++)
if ( (a[i][k]+a[k][j]) < a[i][j] )
a[i][j] = a[i][k] + a[k][j];
}
'알고리즘 > C++' 카테고리의 다른 글
이진 탐색 (Binary Search) 알고리즘 (0) | 2020.07.30 |
---|---|
순차 탐색 (Sequential Search) 알고리즘 (0) | 2020.07.30 |
Dijkstra 알고리즘 (0) | 2020.07.28 |
9-2. 그래프 (Graph) - 너비 우선 탐색 (Breadth First Search, BFS) (0) | 2020.07.26 |
9-1. 그래프 (Graph) - 깊이 우선 탐색 (Depth First Search, DFS) (0) | 2020.07.26 |