博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Floyd算法解说
阅读量:4985 次
发布时间:2019-06-12

本文共 668 字,大约阅读时间需要 2 分钟。

開始知道Floyd算法是在《大话数据结构》这本书的无向带权图求最短路径看到的,

可是第一次没怎么看懂,所以就不看了,后来又看了两遍还是没明确,我以为是我理解能力有问题

后来从百度百科上看了一遍。一次就懂了,事实上就是动态规划

状态转移方程d[i][j] = min(d[i][k] + d[k][j], d[i][j])

状态转移方程求得的是i到j的最短路径

#include
#include
#define INF 1 << 30int d[1000][1000];int main(){ int i, j, k, m, n; //m代表边数,n代表顶点数 int x, y, z; scanf("%d%d", &n, &m); //权值初始化 for (i = 0; i < n; i++) for (j = 0; j < n; j++) d[i][j] = INF; //邻接矩阵图的建立 for (i = 0; i < m; i++) { scanf("%d%d%d", &x, &y, &z); d[x][y] = z; d[y][x] = z; } for (k = 0; k < n; k++) for (i = 0; i < n; i++) for (j = 0; j < n; j++) { if (d[i][k] + d[k][j]

转载于:https://www.cnblogs.com/blfbuaa/p/7390490.html

你可能感兴趣的文章
温故而知新
查看>>
c# 菱形,三角形
查看>>
java之MD5加密
查看>>
Codeforces Round #432 (Div. 2) ABC
查看>>
python跨行 print:多用(),换行符\要小心,少用+或者不用(其它程序代码跨行用\就行,不能用括号)...
查看>>
自己不懂的SQL语句用法
查看>>
C++ 函数指针
查看>>
.NET调用新浪微博开放平台接口的代码示例(转)
查看>>
四种百度文库资源直接下载的方法!不用代码,不用券!一键搞定!
查看>>
数据库-包和包体
查看>>
软件的知识产权保护
查看>>
7.20-7.24
查看>>
Bower前端包管理器
查看>>
Python练习题 047:Project Euler 020:阶乘结果各数字之和
查看>>
Docker私有仓库Harbor部署与使用
查看>>
2017年4月26日
查看>>
(第十周)Beta-2阶段成员贡献分
查看>>
希尔排序与快速排序
查看>>
洛谷p1966 火柴排队 (逆序对变形,目标排序
查看>>
AutoCAD的一些优化设置
查看>>