在算法中,你有3个循环用于最短的[u,v,x] x从1 - n, 你从1 - n, v从1 - n。
为什么循环来自x,u,v而不是x,v,u或u,v,x?
答案 0 :(得分:0)
假设(u,v)
是顶点的索引而x
表示索引,以便我们找到顶点u
和顶点v
之间的最短距离,其中只有顶点之间的那些顶点编号<= x
。
因此dist[u,v,x]
的重复使用dist[u,v,x-1]
,dist[u,x,x-1]
和dist[x,v,x-1]
。
由于在u,v,x
的计算中涉及三个顶点(dist[u,v,x]
),所以在计算dist
之前我们应该已经为所有三对计算了dist[u,v,x]
&#39; 1}}。
因此,x
的循环必须是最外层的循环。内循环可以是v,u
或u,v
,因为它们都是顶点。