[L2] 60_字符串
[L2] 60_字符串
核心哲学:在海量字符中建立“结构化索引”。本质是利用前缀复用(前缀函数、KMP、AC)或后缀压缩(SAM、SA)跳过无效比较。
1. 知识图谱与演化
-
核心工具: Fail 指针、后缀排序、状态压缩、回文半径。
-
演化路径:
2. 决策矩阵
-
多串匹配 / 关键词统计:[[Note] AC 自动机]。
-
子串出现次数 / 字典序 / 复杂子串结构:[[Note] 结构化索引] (SAM/SA)。
-
最长回文子串 / 回文计数:[[Note] 回文处理] (Manacher/PAM)。
3. 核心板块索引
3.1 [L3] 61 匹配与自动机
-
前缀函数理论:前缀函数、Border 链、周期与 KMP 匹配。
-
前缀函数题型整理:沿 Border 链、字符串覆盖、删除匹配与前缀自动机。
-
[[Note] AC 自动机]: 多模式串匹配。
-
[[Note] Trie 树]: 字典树基础。
-
[[Note] SAM]: (后缀自动机) 子串的最简自动机模型。
3.2 [L3] 62 结构化索引
-
[[Note] 后缀数组]: (SA) 后缀排序与 LCP 数组。
-
[[Note] 字符串 Hash]: 快速指纹校验。
3.3 [L3] 63 回文处理
-
[[Note] Manacher]: 线性最长回文子串。
-
[[Note] PAM]: (回文自动机) 回文串的自动机结构。
[L2] 60_字符串
http://miqiu.space/posts/6fb16570/