建议大家学过AC自动机之后再来看这篇小结 fail树就是讲fail指针看做一条边连成的树形结构 fail指针在AC自动机中的含义是指以x为结尾的后缀在其他模式串中所能匹配的最长前缀的长度 所以在模式串中一定有sq[1~fa[x]]为sk[1~x]的子串 这个性质可以解决一些问题: 单词 显然,我们在 ...
分类:
其他好文 时间:
2018-10-19 14:23:47
阅读次数:
357
一道KMP题目 求出next数组后就可以得知一个字串的最长前缀-后缀字串 ...
分类:
其他好文 时间:
2018-10-04 10:36:57
阅读次数:
136
最近学习了一下后缀数组,模板原理以后再看,先记一下一些数组的含义。用以下这张图做例子: rank(i)代表第i个后缀的字典序排名 sa(i)代表排名为i的字典序对应的位置 lcp(i, j)表示suffix(i)和suffix(j)的公共最长前缀 height(i) = lcp(sa(i-1), s ...
分类:
编程语言 时间:
2018-09-20 01:03:12
阅读次数:
174
题意 给定一个字符串s,从小到大输出s中既是前缀又是后缀的子串的长度。 $1 \leq |s| \leq 400000 $ 分析 一道kmp裸题。 设串长为n,且base 0。算出kmp失配指针后,n为最长长度,然后用fail数组往前跳即为答案,因为根据fail数组的含义,f[i]意为找到最长前缀( ...
分类:
其他好文 时间:
2018-08-24 19:26:08
阅读次数:
156
问题描述: 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 示例 2: 说明: 所有输入只包含小写字母 a-z 。 方法1: 贪心:将第一个串和第二个串进行比较,得出的最长前缀再与剩下的进行比较。(48ms) 方法2(官方): 利用min和max ...
分类:
其他好文 时间:
2018-07-22 12:55:24
阅读次数:
144
问题 写一个可以返回一组字符串数组公共最长前缀的函数。 思路 公共最长前缀,即字符串数组中公有的前缀部分。我们可以用字符串数组中第一个字符串作为参考和剩下的字符串进行比较。 具体代码 ...
分类:
其他好文 时间:
2018-03-16 23:06:11
阅读次数:
241
这只是蓝书上的一道KMP水题。。。然后对于最长前缀的循环证明我就不说了。。。 ...
分类:
其他好文 时间:
2018-02-13 14:09:05
阅读次数:
163
路由器工作原理 前面说过网络层的转发功能(forwarding function),就是将分组从一台路由器的入链路传输到出链路。其中是根据编址和最长前缀匹配来进行具体操作。 下图是通用路由器体系结构的视图。并标识了路由器的四个组成部分:输入端口、输出端 ...
分类:
其他好文 时间:
2018-02-02 21:57:32
阅读次数:
196
题面 "HiHocoder1415 " "Poj2774" Sol 都是求最长公共子串,$hihocoder$上讲的很清楚 把两个串拼在一起,中间用一个特殊字符隔开 那么答案就是排序后相邻两个不同串的后缀的$height$ 为什么呢? 如果答案为不相邻的两个后缀的前缀,计算它们最长前缀时必定要跨越过 ...
分类:
编程语言 时间:
2018-01-24 10:51:56
阅读次数:
151
此文为博主原创,转载...转载这种文章有意思吗qwq 严禁各OJ在未经博主同意的情况下擅自使用博文中的题面作为OJ题目。 今天做的是我校dalao@wzy出的套题w【被长达6页的题面淹没】 dalao的题就是难...T1就懵逼了...3.5h不知道自己都干了些什么... 最后80+30+0+0 ra ...
分类:
其他好文 时间:
2017-11-07 00:11:41
阅读次数:
224