Bellman-ford 贝尔曼-福特算法

Bellman-ford算法可以解决负权图的单源最短路径问题 --- 它的优点是可以解决有负权边的单源最短路径问题,而且可以判断是否负权回路

它也有明显的缺点,它的时间复杂度O(N*E)(N是点数 , E是边数)普遍是要高于Dijkstra算法O(N^2)的,像这里,我们使用邻接矩阵实现,那么遍历所有边的数量的时间复杂度就是O(N^3),这里也可以看出Bellman-ford就是一种暴力求解更新

我们这边i-->j的边只更新一次

到这一步就不正常了

只要你更新出了一条更短路径,可能就会影响其它路径 --> 路径不会错,但是权值可能会有问题

时间复杂度 O(N^3) , 空间复杂度O(N)

Bellman-Ford解决不了带负权回路的最短路径

相关推荐
源代码•宸2 小时前
MySQL 索引:索引为什么使用 B+树?(详解B树、B+树)
数据结构·数据库·经验分享·b树·mysql·b+树·b-树
数据智能老司机10 小时前
图算法趣味学——最大流算法
数据结构·算法·云计算
秋难降10 小时前
【数据结构与算法】———深度优先:“死磕 + 回头” 的艺术
数据结构·python·算法
数据智能老司机10 小时前
图算法趣味学——图着色
数据结构·算法·云计算
数据智能老司机10 小时前
图算法趣味学——启发式引导搜索
数据结构·算法·云计算
John.Lewis11 小时前
数据结构初阶(8)二叉树的顺序结构 && 堆
c语言·数据结构·算法
再睡一夏就好12 小时前
【排序算法】④堆排序
c语言·数据结构·c++·笔记·算法·排序算法
再睡一夏就好12 小时前
【排序算法】⑥快速排序:Hoare、挖坑法、前后指针法
c语言·数据结构·经验分享·学习·算法·排序算法·学习笔记
程序员莫小特12 小时前
老题新解|求一元二次方程
数据结构·c++·算法·青少年编程·c·信息学奥赛一本通
啊阿狸不会拉杆15 小时前
《算法导论》第 21 章-用于不相交集合的数据结构
数据结构·c++·算法·随机森林