02 2021 档案
摘要:二分图 这里有一个讲义链接 定义: 如果一张无向图的N个节点(N≥2)可以分成A,B两个非空集合,其中A∩B=Ø,并且在同一集合内的点之间都没有边相连,那么称这张无向图为一张二分图。A,B分别称为二分图的左部和右部。 二分图判定: 一张无向图是二分图,当且仅当图中不存在奇环(长度为奇数的环)。 实现
阅读全文
摘要:Tarjan算法 处理强连通分量 例题(banziti)缩点 为了让所有强连通分量都缩成一个点,我们运用一个dfs来解决问题。 首先,有一个数组dfn[]记录的是遍历的顺序。还有一个数组low[]记录的是该点能到达的最小dfn的点。每一次遍历就更新一次dfn[]和low[],将元素push入栈。当更
阅读全文
摘要:树上差分 首先,什么是差分呢? 差分,又名差分函数或差分运算,差分的结果反映了离散化之间的一种变化,是研究离散数学的一种工具,常用函数差近似导数。(感谢bai度百科) 说人话,在数组中就是后一个数减去前一个数的值搞到一个集合里,这玩意儿就是差分数组。 那么,什么是树上差分呢? 树上差分,顾名思义,就
阅读全文
摘要:树的重心 定义:树的重心也叫树的质心。找到一个点,其所有的子树中最大的子树节点数最少,那么这个点就是这棵树的重心,删去重心后,生成的多棵树尽可能平衡。(感谢bai度百科) 所以怎么实现呢? 找一个点,算它的最大(子树,n-自身大小)的大小,当它最小的时候,那么这个点就是树的重心。 代码如下: 1 v
阅读全文

浙公网安备 33010602011771号