acwing算法基础之搜索与图论--最短路问题

目录

  • [1 基础知识](#1 基础知识)
  • [2 模板](#2 模板)
  • [3 工程化](#3 工程化)

1 基础知识

假设有n个结点,m条边(边的长度或者权重不一致),最短路问题的分类及求解方法如下:

1 单源最短路问题 ,例如求结点1到结点n的最短距离。

1.1 所有边的权重都是正的。

  • 朴素版dijkstra算法,时间复杂度为O(n^2)。时间复杂度与边数无关,适合于稠密图。它是基于贪心实现的。
  • 堆优化版dijkstra算法,时间复杂度为O(mlogn)。适合于稀疏图。它是基于贪心实现的。

1.2 存在负权边。

  • bellman-ford算法,时间复杂度为O(nm)。它是基于离散数学中的一些知识实现的。
  • spfa算法,一般情况下,时间复杂度为O(m);最坏情况下,时间复杂度为O(nm)。

2 多源最短路问题,例如求n个结点中两两结点的最短距离。

  • floyd算法,时间复杂度为O(n^3)。它是基于动态规划实现的。

2 模板

待补充。。。

3 工程化

待补充。。。

相关推荐
追随者永远是胜利者7 分钟前
(LeetCode-Hot100)23. 合并 K 个升序链表
java·算法·leetcode·链表·go
ab15151711 分钟前
2.16完成107、108、111
算法
小O的算法实验室24 分钟前
2026年IEEE IOTJ SCI2区TOP,面向关键节点感知的灾害区域无人机集群路径规划,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
闻缺陷则喜何志丹30 分钟前
【构造】P9215 [入门赛 #11] [yLOI2021] 扶苏与 1 (Hard Version)|普及+
c++·算法·洛谷·构造
Neil今天也要学习39 分钟前
永磁同步电机控制算法--基于数据驱动的超局部无模型预测电流控制MFPC及改进
单片机·嵌入式硬件·算法
blackicexs1 小时前
第五周第二天
算法
不吃粑粑-1 小时前
FHQ Treap模版
数据结构·算法
追随者永远是胜利者2 小时前
(LeetCode-Hot100)22. 括号生成
java·算法·leetcode·职场和发展·go
CHANG_THE_WORLD2 小时前
多维数组传参为什么使用列指针?—— 深度解析
数据结构·算法
追随者永远是胜利者3 小时前
(LeetCode-Hot100)32. 最长有效括号
java·算法·leetcode·职场和发展·go