图论
文章平均质量分 81
算法的图论板块
Tinex589
这个作者很懒,什么都没留下…
展开
-
求单源最短路径及距离——dijkstra模板
可以使用堆(priority_queue)对距离进行排序,这个距离是通过构建pair实现的,堆会对pair.first进行排序。值得注意的是,选取的堆顶距离若不是最小值,说明入队之后该点又经过最小值的更新,堆顶这个值不是当前的最小距离,所以舍弃这个值。思想:在原基础上设置前趋数组pre,当某个点更新最短距离时,使用pre保存其前趋结点,dijkstra运算结束后,可以从结点n往上回溯,由于回溯的顺序和输出顺序相反,所以使用栈stack保存和输出。使用堆优化后,复杂度为。原创 2023-07-13 16:22:30 · 101 阅读 · 0 评论 -
求单源最短路径、长度及判断负环——SPFA模板
情景:给出一个有向图,请输出从某一点s出发到所有点的最短路径长度,若不可达,输出$2^{31}-1$(即URA)。为了方便,代码中将结点编号 1~n 改为 0~n-1,最后再以 1~n 输出。‘原创 2023-07-15 11:42:21 · 200 阅读 · 0 评论