图的最短路径算法-- Floyd算法
Posted hi3254014978
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图的最短路径算法-- Floyd算法相关的知识,希望对你有一定的参考价值。
Floyd算法求的是图的任意两点之间的最短距离
下面是Floyd算法的代码实现模板:
const int INF = 10000000; const int maxv = 200; // maxv为最大顶点数 int n, m; // n 为顶点数,m为边数 int dis[maxv][maxv]; // d[i][j]表示顶点i顶点j的最短距离 void Floyd(){ for (int k = 0; k < n; k++){ for (int i = 0; i < n; i++){ for (int j = 0; j < n; j++){ if (dis[i][k] != INF && dis[k][j] != INF && dis[i][k] + dis[k][j] < d[i][j]){ dis[i][j] = dis[i][k] + dis[k][j]; // 找到更短的路径 } } } } }
以上是关于图的最短路径算法-- Floyd算法的主要内容,如果未能解决你的问题,请参考以下文章