01 2020 档案
摘要:spfa算法是对bellman-ford算法的优化,bellman-ford算法遍历每一条边,不断的迭代更新。但是注意到,有许多边的值是不变的,也就是说不需要更新,所以spfa算法基于这一点进行优化,只有值变小的点才有机会去更新其他点。所以我们用一个队列来存储可以更新其他点的点。 1 1.初始化 2
阅读全文
摘要:dijkstra算法是经典的贪心算法。基本的想法是,有两个集合S和E,开始S集合中只有一个起点,E集合中有剩下的其他点。遍历E集合中的所有点,找出与起点距离最近的一个点,将其加入集合S,并用该点去更新起点到其他点的最短路径。(注意该算法只能处理正边权的图) 由动图结合上面的思路,我们可以看出,算法的
阅读全文
摘要:树的深搜: 树的重心 思路:我们可以遍历每一个节点,获取当前节点除外以后的每一个连通块中的点的数量,用一个res变量存储,每次到最后的时候用一个ans存储res中的最小值。 1 #include <iostream> 2 #include <algorithm> 3 #include <cstrin
阅读全文
摘要:指数形枚举:即集合中的元素,选或者不选两种状态,$0$和$1$, 即集合的所有子集。例如$\left \{ 1,2 \right \}$集合中的子集有$\left \{ \right \},\left \{ 1 \right \},\left \{ 2 \right \},\left \{ 1,2
阅读全文

浙公网安备 33010602011771号