【学习笔记】模板综合 这里是记录所有学过的模板的(好像还不会背啊) Floydlink 给出一张由 $n$ 个点 $m$ 条边组成的无向图。 求出所有点对 $(i,j)$ 之间的最短路径。 输入 #1123454 41 2 12 3 13 4 14 1 1 输出 #112340 1 2 11 0 1 22 1 0 11 2 1 0 对于 $100%$ 的数据,$n \le 100$,$m \le 4500$,任意一 2025-09-24 #学习笔记
【学习笔记】树上差分 分类1.点差分 2.边差分 边差分对差分和差分数组的理解一般都是停留再数组这种线性结构上,这可能会导致学习树上差分的时候无法理解这个概念。 树上差分一般应用于在树上的路径统计。 对于一棵树,可以设置差分数组表示经过边$i$(边$i$的定义是连接$i$到$i$父亲的这条边)的次数。 进行边差分是一般是从叶子节点向根节点进行差分。 若要在$(u,v)$的路径上进行加$i$,那我们要在差分数组进行下面操 2025-07-29 #学习笔记
【学习笔记】子树和 定义在数据结构中存在一种叫“树”的结构。 树的定义:树是由$n$个节点(或元素)组成的有限集合(记为$T$)。 如果$n=0$,它是一棵空树。 如果$n>0$,这个n个节点有且仅有一个节点作为树的根节点,简称为跟,其余节点可分为$m(m\leq 0)$个互不相干的有限集合$T1,T2\cdots$,其中,每个自己不呢神是一棵符合定义的树,成为根节点的子树。 求二叉树的最大子 2025-07-29 #学习笔记
【学习笔记】单源次短路径 算法思想通过改进dijkstra的更新逻辑来实现单源次短路径。 当我们从队首得到一个新的点$u$和$s$到$u$的距离$d$时,会有以下三种情况: 其中的$d_i$表示$s$到$i$的最短路径,$ld_i$表示$s$到$i$的次短路径。 $dis < d_u$,可以更新最短路和次短路,那么次短路更新成原来的最短路,然后更新最短路。 $d_i < dis < ld_i$,可以更新 2025-07-27 #学习笔记