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

相关推荐
夏末秋也凉6 小时前
力扣-回溯-46 全排列
数据结构·算法·leetcode
王老师青少年编程6 小时前
【GESP C++八级考试考点详细解读】
数据结构·c++·算法·gesp·csp·信奥赛
liuyuzhongcc9 小时前
List 接口中的 sort 和 forEach 方法
java·数据结构·python·list
计算机小白一个10 小时前
蓝桥杯 Java B 组之背包问题、最长递增子序列(LIS)
java·数据结构·蓝桥杯
卑微的小鬼11 小时前
数据库使用B+树的原因
数据结构·b树
cookies_s_s11 小时前
Linux--进程(进程虚拟地址空间、页表、进程控制、实现简易shell)
linux·运维·服务器·数据结构·c++·算法·哈希算法
醉城夜风~12 小时前
[数据结构]双链表详解
数据结构
gyeolhada13 小时前
2025蓝桥杯JAVA编程题练习Day5
java·数据结构·算法·蓝桥杯
阿巴~阿巴~13 小时前
多源 BFS 算法详解:从原理到实现,高效解决多源最短路问题
开发语言·数据结构·c++·算法·宽度优先
刃神太酷啦15 小时前
堆和priority_queue
数据结构·c++·蓝桥杯c++组