图论 —— 最短路
【概述】
最短路是图论中十分常见的一个问题,可分为单源最短路与全源最短路。
对于单源最短路来说,有时间复杂度为 O(E+VlogV) 要求权值非负的 Dijkstra,时间复杂度为 O(VE) 适用于带负权值的 Bellman Ford
对于全源最短路来说,有时间复杂度为 O(V*V*V) 的利用动态规划思想的 Floyd 算法,时间复杂度为 O(V*E+V*V*logV) 的基于 Dijkstra 的 Johnson 算法
具体算法内容详解:
【例题】
1.Floyd
- Bus System(HDU-1690):点击这里
- 最短路(HDU-2544):点击这里
- Checking an Alibi(POJ-2394):点击这里
- 六度分离(HDU-1869):点击这里
- 信使(信息学奥赛一本通-T1376):点击这里
- 最短路径(信息学奥赛一本通-T1378):点击这里
- 最短路径问题(信息学奥赛一本通-T1342):点击这里
- 牛的旅行(信息学奥赛一本通-T1343):点击这里
- Shortest Path(HDU-5636):点击这里
- Restoring Road Network(AtCoder-3535):点击这里
- 最优乘车(信息学奥赛一本通-T1377)(输出流的应用+Floyd):点击这里
- Cow Hurdles(POJ-3615 )(最大值中的最小值):点击这里
- Fire-Fighting Hero(2019 ACM-ICPC 南昌赛区网络赛 B)(阅读理解+Floyd):点击这里
2.Dijkstra
- 最小花费(信息学奥赛一本通-T1344):点击这里
- 一个人的旅行(HDU-2066):点击这里
- 畅通工程续(HDU-1874):点击这里
- MPI Maelstrom(POJ-1502):点击这里
- Til the Cows Come Home(POJ-2387):点击这里
- Here We Go(relians) Again(HDU-2722):点击这里
- 炫酷路途(2019牛客寒假算法基础集训营 Day5-D):点击这里
- Honeycomb (Gym-102028F)(模拟建图+Dijkstra):点击这里
- A Walk Through the Forest(HDU-1142)(dfs搜索路径+Dijkstra):点击这里
- Silver Cow Party(POJ-3268)(双向最短路):点击这里
- The Battle of Guandu(HDU-5545)(多源多汇最短路):点击这里
- 齐头并进(51Nod-1649)(两次Dijkstra):点击这里
- 城市交通路网(信息学奥赛一本通-T1261)(Dijkstra+递归输出):点击这里
3.Bellman Ford
- 热浪(信息学奥赛一本通-T1379):点击这里
- 分糖果(信息学奥赛一本通-T1380):点击这里
- 城市路(信息学奥赛一本通-T1381):点击这里
- 最短路(信息学奥赛一本通-T1382):点击这里
- 香甜的黄油(信息学奥赛一本通-T1345):点击这里
- Skiing(POJ - 3037):点击这里
- zz's Mysterious Present(HDU-2145):点击这里
- In Action(HDU-3339)(01背包+SPFA):点击这里
- Telephone Linse(POJ-3662)(二分+SPFA):点击这里
- Destroying Roads(CF-302B)(SPFA 求任意两点最短路):点击这里
- すぬけ君の地下鉄旅行 / Snuke's Subway Trip(AtCoder-2069)(拆点建图+SPFA):点击这里
- Holy Grail(2019 ACM-ICPC 南京赛区网络赛 H)(建边+SPFA):点击这里