
字符串
Best KeyBoard
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
知识点 - 确定有穷自动机
知识点 - 确定有穷自动机 DFA Deterministic finite automaton 解决问题类型: 求字符矩阵进行1e6次旋转(2个方向)和翻转(4个方向)后的状态。 字符串匹配、文本分析。 定义 **确定有穷自动机M:**由五个元素组成:M=(Q,Σ,δ,q0,F)M=(Q,\Sigma,\delta,q_0,F)M=(Q,Σ,δ,q0,F)其中 Q:Q:Q:状态的集合; q0:...原创 2019-08-10 19:44:09 · 1595 阅读 · 0 评论 -
知识点 - KMP与Z函数
知识点 - KMP 解决问题类型: 前缀函数 查找子串 每个前缀的出现次数 本质不同子串的个数O(n^2) 字符串压缩:找到t使得s可以被多个t重复出现得到 前缀自动机 Z函数 查找子串 本质不同子串的个数O(n^2) 字符串压缩 定义与代码: 前缀函数π\piπ(prefix function): π[i]\pi[i]π[i]代表子串s[0…i]s[0 \dots i]s[0…i]与其后缀相等的...原创 2019-08-20 19:46:40 · 649 阅读 · 0 评论 -
trie 与AC自动机
知识点 - trie 与AC自动机 解决问题类型: 在文本串中查找所有模式串 求和给定字符串集合不匹配的字典序最小的长度为L的c串 求包含给定字符串集合的最短串 求字典序最小的长度为L的包含k个串的串 论文: 2009 浅析字母树在信息学竞赛中的应用 字母树 blog 定义与代码: trie trie树是每条边都代表某个字母的有根树,结点的出边权值都不同。叶子结点会有一个标记,代表这个结点对...原创 2019-08-20 21:35:35 · 223 阅读 · 0 评论 -
知识点 - 后缀数组
知识点 - 后缀数组 (SA) 解决问题类型: 最小的循环位移(cyclic shift,即字符环中字典序最小) 查找子串 比较两个子串 两个子串的LCP(不需要额外空间) 本质不同的子串数 论文 2009后缀数组——处理字符串的有力工具 罗穗骞 后缀数组 2004 后 缀 数 组 许智磊 后缀数组 blog 定义与代码: sa[i]sa[i]sa[i]表示s串后缀中第 iii 小的后缀...原创 2019-08-20 21:38:29 · 264 阅读 · 0 评论 -
知识点 - 后缀自动机
知识点 - 后缀自动机 解决问题类型: 询问一些模式串P是否出现在文本串T中 询问一些模式串P文本串T中出现了几次 询问一些模式串P文本串T中第一次出现的位置 询问一些模式串P文本串T中所有出现的位置 S串中有几个不同的子串 S串中不同子串的总长度 求S字典序第K大的子串 求S字典序最小的循环位移(cyclic shift) 求S最短的没有出现的子串 求S1,S2的最长公共子串 求 kkk个串 ...原创 2019-08-20 21:39:46 · 360 阅读 · 0 评论 -
知识点 - 后缀树模板
知识点 - 后缀树模板 解决问题类型: 读入一个串,建一颗后缀树 论文: Algorithms on Strings, Trees, and Sequences 定义与代码: O(nlog(k))O(n\log(k))O(nlog(k))建树k是字母表大小。 string s; int n; struct node { int l, r, par, link; map<char,i...原创 2019-08-20 21:47:19 · 464 阅读 · 0 评论