此题要求一条从V1到V2的路径,使得路径上最长的边距离最小。
用G[i][j]表示从点i到点j最长边的最小值,如果从点i到点j经过了点k,则
G[i][j]=min(max(G[i][k],G[k][j]),G[i][j])
模仿Floyed的三重循环,最后输出G[1][2]即可。
另外由于计算过程只涉及比较,所以可以令G[i][j]为点i到点j距离的平方,只在输出是将其开根号。
此题要求一条从V1到V2的路径,使得路径上最长的边距离最小。
用G[i][j]表示从点i到点j最长边的最小值,如果从点i到点j经过了点k,则
G[i][j]=min(max(G[i][k],G[k][j]),G[i][j])
模仿Floyed的三重循环,最后输出G[1][2]即可。
另外由于计算过程只涉及比较,所以可以令G[i][j]为点i到点j距离的平方,只在输出是将其开根号。