合集-学习笔记
摘要: 当遍历到一个点x时,这个点为割点的情况有两种: 第一种是该节点为根节点且子节点数>=2,必导致两个子节点不连通; 第二种是该节点不为根节点,且 ,即子节点i可回溯到的最早的点不早于x点,那么删去x一定导致x的
阅读全文
摘要:概念 割点:对于一个无向图的点x,如果删去x后图不连通,则x为割点。 点双通分图:对于一个无向图,若其中不存在割点,则其为一个点双连通图。 点双通分量:对于一个无向图中的极大点双联通的子图,称这个子图为点双通分量 例如,如图,其中有4个 :{1,2,3,4}
阅读全文
摘要:定义与基本求法 定义 又名 马拉车 ,用于处理子串回文问题。 基本求法 暴力判断每个子串是否是回文是 的,根据其对称性优化为 依旧是不优秀的。 马拉车便是解决这种单一问题的算法,具有局限性,但同时是解决这种问题的不二选择。 枚举回文串的中点,例如 \(aa
阅读全文
摘要:定义与基本求法 定义 又称字典树,用边表示字母,从根节点到树上某一节点路径形成一个字符串。 例如 基本求法 廷显然的,往树中存就行了,查询也是显然的,通过一道例题来理解吧: 于是他错误的点名开始了 #include<bits/stdc++.h> #define int lo
阅读全文
摘要:前言 一个抽象的事情,我在证欧拉定理的时候,偶然发现了一个式子: 非常的偶然,实际上是证明欧拉定理的时候有一步搞错了,然后不得不想如何把 消去,然后就很意外的发现了这个式子。 当时我不知道他到底是不是成立的,我试了好几个
阅读全文
摘要:理论知识 详见 OI Wiki 。 模板 后缀排序 一切有关后缀数组问题的必备板子。 求后缀数组模板题,OI Wiki 有详解 。 点击查看代码 #include<bits/stdc++.h> #define int long long #define endl '\n' #define sort
阅读全文
摘要:BST 又称二分查找树, 性质指其左子树所有节点全职均小于该点,其右子树所有节点全职均大于该点;同时若对该棵树进行中序遍历,所产生的序列为从小到大排序的序列。 利用该性质,从而在 的复杂度内实现查询排名、第 小(大)值、前驱、后继等。 当每次插
阅读全文
摘要:前言 本来时今年寒假学的,当时回家比较早没学完也没学明白,打模拟赛却多次用到,所以重学一下。 原理与定义 即 字典树(trie 树)加 指针, 指针等同于 kmp 的 数组,匹配前缀的最长后缀, 指针单独拎出来构成一颗失配树(fai
阅读全文
摘要:最小割树 最小割树就是通过分治建出一棵树,树上两点的最小割就等于原图上的最小割,树上两点路径唯一,其最小割就等于路径上边权的最小值。 建树时,任意选择两点最为 跑最小割,求得 ,并将其分为两个集合 ,对于 ,有
阅读全文