∑

数学知识体系

Observatory Archive of Mathematics
⌕2026/8/31
概念

最短路径

Dijkstra(非负权)、Bellman-Ford(可负权)、Floyd-Warshall(全源)三种经典算法覆盖了导航与网络路由的核心需求。

所属主题:图论 ↗
阅读路径

参考可汗学院 Get ready 机制:先修概念 → 当前概念 → 进阶概念,✓ 表示已读。

01定义

最短路径问题求两点间权重和最小的路径:Dijkstra 算法以贪心扩展处理非负权图,Bellman-Ford 容忍负权并检测负环,Floyd-Warshall 一次算出所有点对——三者覆盖导航与路由的核心需求。
s t 2 3 1 5 2 金色路径 s→t 总权 6,优于绕行(9)——贪心逐步锁定最近点
Dijkstra:金边构成 s 到 t 的最短路径

02核心要点

01

三算法分工

Dijkstra(非负权,堆优化 O((V+E)log⁡V)O((V+E)\log V));Bellman-Ford(允许负权、检测负环,O(VE)O(VE));Floyd-Warshall(全源,O(V3)O(V^3),动态规划)。

02

最优子结构

最短路径的任一子段仍是最短路径——动态规划与 Dijkstra 贪心的共同根基;负权圈则使「最短」失去意义。

03

A* 与工程加速

A* 用启发函数剪枝(可采纳则最优);路网查询另有收缩层级(CH)与地标法(ALT),把大陆级查询压到毫秒。

03关键公式

d(v)=min⁡(u,v)∈E(d(u)+w(u,v))d(v)=\min_{(u,v)\in E}\bigl(d(u)+w(u,v)\bigr)

04历史沿革

Dijkstra 1956 年喝咖啡时 20 分钟想出算法并 1959 年发表;Bellman 与 Ford 1958 年以动态规划处理负权;Floyd 与 Warshall 1962 年给出全源算法。

05应用与延伸

地图导航(高德/谷歌路线规划)、网络路由协议(OSPF 即 Dijkstra)、游戏 AI 寻路、供应链最小成本运输。

06交互演示

Dijkstra:逐步扩张最短路径树增大步数:每次确定一个距 A 最近的节点,直到全图

07相关概念