最短路算法
稠密图与稀疏图
n为点数,m为边数。m远小于n的平方为稀疏图,m接近n的平方为稠密图。
稀疏图用邻接表存,稠密图用邻接矩阵存
朴素版dijkstra时间复杂度为O(n^2),对于稠密图可以ac,但遇到稀疏图时会TLE。
dijkstra函数实现步骤:
1、初始时,所有点都在圈内,所有点vis都=0,d[原点]=0,d[其他点]=+∞
2、从圈内选一个距离最小的点,打标记移除圈
3、对t的所有出边执行松弛操作(即尝试更新所有邻点的最小距离:dist[j]
最短路算法
稠密图与稀疏图
n为点数,m为边数。m远小于n的平方为稀疏图,m接近n的平方为稠密图。
稀疏图用邻接表存,稠密图用邻接矩阵存
朴素版dijkstra时间复杂度为O(n^2),对于稠密图可以ac,但遇到稀疏图时会TLE。
dijkstra函数实现步骤:
1、初始时,所有点都在圈内,所有点vis都=0,d[原点]=0,d[其他点]=+∞
2、从圈内选一个距离最小的点,打标记移除圈
3、对t的所有出边执行松弛操作(即尝试更新所有邻点的最小距离:dist[j]