Day 65 || SPFA、判断负权回路、bellman_ford之单源有限最短路

Bellman_ford 队列优化算法(又名SPFA)

题目链接: 卡码网:94. 城市间货物运输 I

思路: 具体参考"代码随想录------Bellman_ford 队列优化算法(又名SPFA)",主要的思想是在Bellman_ford算法中因为要每条边都要松弛(判断是否可以松弛),但是改进队列优化使用了邻接表先查询到当前点邻接的是什么点然后放入队列遍历松弛,节省遍历所有路径判断是否可以松弛这个步骤,节省时间。但是是有弊端的,一方面队列读取存储耗时,另一方面如果路径过多其实理论时间上无限接近于"Bellman_ford "算法

bellman_ford之判断负权回路

题目链接: 卡码网:95. 城市间货物运输 II

思路: 判断是够有负权回路有两种方法,第一种以为我们知道如果没有负权回路的话Bellman_ford原始方法不断松弛即使n次以上minDist也不会变化,因为路径已经是最小的了,但是负权回路会使得minDist不停变小。第二种方法是Bellman_ford 队列优化算法下,已知每个店最多会被加入队列n-1次,但是超过n-1那必然是负权回路。(具体参考"代码随想录------bellman_ford之判断负权回路")。

bellman_ford之单源有限最短路

题目链接: 卡码网:96. 城市间货物运输 III**思路:**k个城市就是松弛k+1次,讲解了录入路径的顺序对之后的遍历也会有影响所以不能完全相信k+1次松弛,所以每次松弛需要保存上一次松弛的结果进行对比。(具体参考"
代码随想录------bellman_ford之单源有限最短路

")

相关推荐
白狐_7981 小时前
408数据结构第8章:排序②——性质对比秒杀、场景选择与外部排序
java·数据结构·算法
zander2581 小时前
LeetCode 84:柱状图中的最大矩形——单调栈如何确定左右边界
java·数据结构·算法
Shell运维手记2 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
杨航 AI2 小时前
O(n log n):线性对数原理拆解 这个是排序算法的黄金复杂度之一。
算法·排序算法
船厂电气自动化ai大模型3 小时前
AI大模型与数学 第32课 函数凹凸性与二阶导数:拐点求解、凹凸区间计算(10道二阶导数计算题)
数据结构·人工智能·python·深度学习·算法
旖旎夜光3 小时前
LeetCode 3:无重复字符的最长子串(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
叠层归一研究院4 小时前
AGI 系统(十一):二阶网络 — 二阶递归 × 多主体 (元符号网络)
开发语言·人工智能·算法·php·agi
zlinear数据采集卡4 小时前
D223的PWM电机控制:6路独立脉冲+加减速算法深度解析
arm开发·stm32·嵌入式硬件·算法·fpga开发·架构
杨石兴5 小时前
31、玩具MoM:用2x2矩阵串起全套流程
人工智能·算法·矩阵·电磁学
江畔柳前堤5 小时前
Function Calling 与 Tool Calling:从认知到工程的全景深度解析
开发语言·网络·人工智能·深度学习·算法·机器学习·php