用于求稀疏图上的全局最短路。
考虑将带负权的图变为不带负权的图,再跑\(n\)次Dijkstra。
方法:新建点S,向所有点连边权为\(0\)的边,然后以S为起点跑SPFA。然后将每条边的权值重新赋为\(dist[u\Rightarrow v]+dj[u]-dj[v]\)即可。
用于求稀疏图上的全局最短路。
考虑将带负权的图变为不带负权的图,再跑\(n\)次Dijkstra。
方法:新建点S,向所有点连边权为\(0\)的边,然后以S为起点跑SPFA。然后将每条边的权值重新赋为\(dist[u\Rightarrow v]+dj[u]-dj[v]\)即可。
转载于:https://www.cnblogs.com/utopia9999/p/9715473.html