字符串
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 · 1547 阅读 · 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 · 586 阅读 · 0 评论 -
trie 与AC自动机
知识点 - trie 与AC自动机解决问题类型:在文本串中查找所有模式串求和给定字符串集合不匹配的字典序最小的长度为L的c串求包含给定字符串集合的最短串求字典序最小的长度为L的包含k个串的串论文:2009 浅析字母树在信息学竞赛中的应用 字母树blog定义与代码:trietrie树是每条边都代表某个字母的有根树,结点的出边权值都不同。叶子结点会有一个标记,代表这个结点对...原创 2019-08-20 21:35:35 · 189 阅读 · 0 评论 -
知识点 - 后缀数组
知识点 - 后缀数组 (SA)解决问题类型:最小的循环位移(cyclic shift,即字符环中字典序最小)查找子串比较两个子串两个子串的LCP(不需要额外空间)本质不同的子串数论文2009后缀数组——处理字符串的有力工具 罗穗骞 后缀数组2004 后 缀 数 组 许智磊 后缀数组blog定义与代码:sa[i]sa[i]sa[i]表示s串后缀中第 iii 小的后缀...原创 2019-08-20 21:38:29 · 223 阅读 · 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 · 305 阅读 · 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 · 420 阅读 · 0 评论