弗洛伊德算法

原创 2015年07月08日 21:04:12
#include <stdio.h>//弗洛伊德算法求解任意两点之间的距离
 int main()
 {

     int a[100][100];
     int i,j,k,n,m,c,d,e;
     scanf("%d%d",&n,&m);
     for (i=1;i<=n;i++)
        for (j=1;j<=n;j++)
        if (i==j)a[i][j]=0;
     else a[i][j]=10000;
     for (i=1;i<=m;i++)
     {
        scanf("%d%d%d",&c,&d,&e);
        a[c][d]=e;
     }
     for (k=1;k<=n;k++)//通过k点周转
     for (i=1;i<=n;i++)
        for (j=1;j<=n;j++)
        if ((a[i][k]!=10000)&&(a[k][j]!=10000)&&(a[i][j]>a[i][k]+a[k][j]))
        a[i][j]=a[i][k]+a[k][j];
     for (i=1;i<=n;i++)
     {
         for (j=1;j<=n;j++)
        printf("%d ",a[i][j]);
        printf("\n");
     }
     return 0;
 }


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

弗洛伊德算法详解

  • 2012-04-07 22:33
  • 42KB
  • 下载

弗洛伊德算法调试

  • 2012-02-28 17:45
  • 733B
  • 下载

最短路径--弗洛伊德(Floyd)算法

最短路径--弗洛伊德(Floyd)算法       最短路径问题。即寻找图中某两个特定结点间最短的路径长度。所谓图上的路径,即从图中一个起始结点到一个终止结点途中经过的所有结点序列,路径的长度...

弗洛伊德算法

定义 弗洛伊德算法计算图中各个顶点之间的最短路径,迪杰斯特拉算法用于计算图中某一个顶点到其他顶点的最短路径。为了便于理解计算过程,可以这样认为: 迪杰斯特拉算法通过选定的被访问顶点(已确定最短路径...

弗洛伊德最短路径算法

下面是我按照严蔚敏老师的C语言版数据结构P189编写的弗洛伊德算法,在VC++6.0下运行通过#include "stdio.h" #include "stdlib.h" #define MAX ...

弗洛伊德算法

  • 2016-04-12 20:09
  • 764B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)