D % 输出距离矩阵; O, D' ^( a k2 f& K: ~5 M
R % 输出路径矩阵 - n- q- ^7 }7 D- s3 H0 e! J& J9 n) D
解释: $ h, U, w8 a, A# ^* R/ d1 h( n$ S1 m5 Q- \- O4 y. j" u6 E
1.带权图的表示: 给定图被表示为邻接矩阵 w,其中 w(i, j) 表示从顶点 i 到顶点 j 的边的权重。inf 用于表示两个顶点之间没有直接的边。 " X* X$ ^5 c# I2.初始化: 距离矩阵 D 被初始化为与邻接矩阵相同的值。路径矩阵 R 被初始化为一个矩阵,其中每个元素 R(i, j) 最初被设置为 j。 . u( ^" j" N. K6 J+ T+ G4 |3.Floyd-Warshall算法: 嵌套循环实现了Floyd-Warshall算法。外层循环 (k) 代表通过哪个中间顶点进行路径检查。内层循环 (i 和 j) 遍历所有顶点对,并检查通过 k 从 i 到 j 的路径是否比直接从 i 到 j 的路径更短。如果是这样,就更新距离矩阵 D 和路径矩阵 R。 3 M% J! e o0 ~( I. e1 {4.输出: 最终的距离矩阵 D 和路径矩阵 R 被显示。9 G# D" ?) F5 c
* r: C0 @3 F9 O, ~4 g
输出包含最终的距离矩阵和表示路径的矩阵。元素 D(i, j) 表示从顶点 i 到顶点 j 的最短距离,而 R(i, j) 表示从 i 到 j 的最短路径上的中间顶点。- V+ O4 j' G/ O* E- u. D