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解决不了带负权回路的最短路径

相关推荐
im_AMBER4 小时前
算法笔记 09
c语言·数据结构·c++·笔记·学习·算法·排序算法
凯芸呢4 小时前
Java中的数组(续)
java·开发语言·数据结构·算法·青少年编程·排序算法·idea
AI柠檬4 小时前
几种排序算法的实现和性能比较
数据结构·算法·c#·排序算法
zz0723206 小时前
数据结构 —— 栈
数据结构
Madison-No77 小时前
【C++】关于list的使用&&底层实现
数据结构·c++·stl·list·模拟实现
Bug退退退1237 小时前
ArrayList 与 LinkedList 的区别
java·数据结构·算法
2301_807997388 小时前
代码随想录-day26
数据结构·c++·算法·leetcode
TL滕9 小时前
从0开始学算法——第一天(认识算法)
数据结构·笔记·学习·算法
代码雕刻家12 小时前
1.4.课设实验-数据结构-单链表-文教文化用品品牌2.0
c语言·数据结构
云边有个稻草人13 小时前
Rust 借用分割技巧:安全解构复杂数据结构
数据结构·安全·rust