浅谈最短路径Floyed算法(c)

来源:互联网 发布:刘涛网络直播视频 编辑:程序博客网 时间:2024/06/05 03:43

:Floyed算法利用了DP思想是一种很简单的算法,不过时间复杂度位O(n^3),可以处理负数,空间复杂度为O(N^2).

还有很多算法这里就不多讲解了,以上一种很常见,也用途较广.

Floyed核心代码如下:

for (int k=1;k<=n;k++)  for (int i=1;i<=n;i++)    for (int j=1;j<=n;j++)      if (a[i][j]>a[i][k]+a[k][j])         a[i][j]=a[i][k]+a[k][j];

注意:k必须是在最外层,不可以放到别的位置.


1 0
原创粉丝点击