码迷,mamicode.com
首页 >  
搜索关键字:后缀数组    ( 1340个结果
Cantor数组问题
Cantor数组问题: 已知数组A[0...N-1]乱序着前N个正整数,现统计后缀数组A[i+1...N-1]中小于元素A[i]的数目,并存放在数组C[i]中。则C数组称为Cantor数组。 如给定数组:4,6,2,5,1,3。得到的Cantor数组为:3,4,1,2,1,0。 生成Cantor数组 ...
分类:编程语言   时间:2016-05-05 00:29:36    阅读次数:201
FZU 2176 easy problem (DFS序+树状数组)
对于一颗树,dfs遍历为每个节点标号,在进入一个树是标号和在遍历完这个树的子树后标号,那么子树所有的标号都在这两个数之间,是一个连续的区间。(好神奇~~~) 这样每次操作一个结点的子树时,在每个点的开始结束两个点标记一下就可以,用后缀数组求前缀和就可知道每个点的值。 这道题虽然很麻烦(dep[y]- ...
分类:编程语言   时间:2016-05-02 18:41:21    阅读次数:201
后缀数组 UVA 11107 Life Forms
题目链接 题意:训练指南P223 分析:二分长度,把所有字符串连成一个字符串,中间用不同的字符分隔(这是为了保证匹配长度始终在一个字符串内)。height数组分段,vis数组标记哪些字符串被访问了,如果可行,更新长度最大值,以及所有符合条件的子串的起点,最后要按字典序从小到大输出。虽然写的有些搓,比 ...
分类:编程语言   时间:2016-05-02 16:54:36    阅读次数:185
后缀数组
两篇论文:许智磊后缀数组.pdf 后缀数组——处理字符串的有力工具.pdf ...
分类:编程语言   时间:2016-05-01 14:53:59    阅读次数:152
后缀数组 POJ 3693 Maximum repetition substring
题目链接 题意:给定一个字符串,求重复次数最多的连续重复子串。 分析:(论文上的分析)先穷举长度 L,然后求长度为 L 的子串最多能连续出现几次。首先连续出现 1 次是肯定可以的,所以这里只考虑至少 2 次的情况。假设在原字符串中连续出 现 2 次,记这个子字符串为 S,那么 S 肯定包括了字符 r ...
分类:编程语言   时间:2016-05-01 14:53:00    阅读次数:229
后缀数组 POJ 2406 Power Strings
题目链接 题意:连续重复子串。给定一个字符串 L,已知这个字符串是由某个字符串 S 重复 R 次而得到的(L = S^R ), 求 R 的最大值。 分析:枚举长度,判断条件是能被总长度整除且LCP (suffix (0), suffix (i)) = n - i,预处理出lcp,方法是,lcp[i] ...
分类:编程语言   时间:2016-05-01 09:53:27    阅读次数:249
后缀数组 POJ 3261 Milk Patterns
题目链接 题意:可重叠的 k 次最长重复子串。给定一个字符串,求至少出现 k 次的最长重复子串,这 k 个子串可以重叠。 分析:与POJ 1743做法类似,先二分答案,height数组分段后统计 LCP>=m 的子串的个数。 ...
分类:编程语言   时间:2016-05-01 09:51:37    阅读次数:256
后缀数组 SPOJ 694 Distinct Substrings
题目链接 题意:给定一个字符串,求不相同的子串的个数 分析:我们能知道后缀之间相同的前缀的长度,如果所有的后缀按照 suffix(sa[0]), suffix(sa[1]), suffix(sa[2]), …… ,suffix(sa[n])的顺序计算,不难发现,对于每一次新加进来的后缀 suffix ...
分类:编程语言   时间:2016-05-01 09:50:22    阅读次数:196
后缀数组 POJ 1743 Musical Theme
题目链接 题意:给定n个数字,求超过5个数字的,最长的,变化相同的,不相交的重复子串 分析:男人8题中的一题!数列相邻两项做差,形成新数列,即求数列中的最长重复子串(不可相交)。 后缀数组+二分答案。假如二分得到答案L,如何知道它是可行的呢? 因为对于排序后的后缀,Lcp ( Suffix ( Li ...
分类:编程语言   时间:2016-05-01 09:47:11    阅读次数:171
后缀数组 POJ 2217 Secretary
题目链接 题意:求两个字符串的最长公共子串 分析:做法是构造新的串是两个串连接而成,中间用没有出现的字符隔开(因为这样才能保证S的后缀的公共前缀不会跨出一个原有串的范围),即newS = S + '$' + T。对其求sa数组和height数组,取最小值的height[i],且两个后缀串属于不同的字 ...
分类:编程语言   时间:2016-04-30 16:56:48    阅读次数:153
1340条   上一页 1 ... 73 74 75 76 77 ... 134 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!