最短路问题 - 建图!
单元最短路
一个起点到其他所有点最短路
所有边权都是正数
朴素Dijkstra算法 O(n^2)
适用:稠密图 s:当前已确定最短距离的点
1.初始化距离 dis[1]=0, dis[i]=+∞
2.for i:1~n t:不在s中的距离最近的点 s<-t:用t更新其他点距离,dis[x]>dis[t]+w(权重)
题目链接:最短路径I
堆优化Dijkstra算法 O(mlogn)
适用:稀疏图
存在负权边
Bellman-Ford O(nm)
SPFA 一般:O(m),最坏O(nm)
多源汇最短路
不同源点(起点)到汇点(终点),起点和终点不确定