Floyd算法
數據結構圖論的最短路徑算法經典的有三種:
* Floyd Warshall算法
* Dijkstra算法
* Bellman-Ford 算法
Floyd 算法
Floyd算法可計算任意結點到所有結點的最短路徑,其時間複雜度爲
代碼
void InitializeDistanceMatrix(Directed_Weighted_Graph *G);
for(int k = 0; k < n; k++) {
for(int i = 0; i < n; i++) {
if(D[i][j] > D[i][k] + D[k][j])
D[i][j] = D[i][k] + D[k][j];
}
}