弗洛伊德(Floyd)算法求个顶点之间最短路径问题(详解+图解)
在算法开始时,我们假设图中的所有节点之间都是不联通的,即它们之间的距离为无穷大。具体来说,对于图中的每个节点对(i,j),我们检查是否存在一个节点k,使得从i到k再到j的路径比已知的最短路径更短。再次对所有顶点i,j做判断dist[i][j]>dist[i][k]+dist[k][j] (对所有顶点i,j做判断dist[i][j]>dist[i][k]+dist[k][j] (对所有顶点i,j做判断dist[i][j]>dist[i][k]+dist[k][j] (每次都选一个顶点作为中转点。
原创
2023-10-24 16:42:05 ·
4228 阅读 ·
3 评论