字符串匹配
本文将介绍字符串匹配,包括预处理前缀函数的 KMP 与基于滚动哈希的 Rabin–Karp 算法。
字符串哈希
本文将介绍字符串哈希,用多项式哈希配合前缀和在 O(1) 内比较子串,并给出自然溢出实现。
字典树
本文将介绍字典树,按公共前缀组织字符串集合,支持 O(L) 插入与查询,并可配合异或贪心。
Z 函数
本文将介绍 Z 函数即扩展 KMP,借最靠右匹配段在线性时间内求解,并用于模式匹配与周期判定。
自动机
本文将介绍 AC 自动机、后缀数组、后缀自动机与广义后缀自动机,及其在多模式匹配与子串问题中的应用。
Manacher
本文将介绍 Manacher 算法,借回文对称性在线性时间内求每个位置的最长回文半径与最长回文子串。
回文树
本文将介绍回文树,每个节点对应一个本质不同回文子串,线性在线构建并统计回文相关信息。
最小表示法
本文将介绍最小表示法,用双指针在 O(n) 内求字符串所有循环同构中字典序最小者的起点。
Lyndon 分解
本文将介绍 Lyndon 串与 Lyndon 分解,以及线性时间求出分解的 Duval 算法。