kmp next函数 kmp的周期问题,深入了解kmp中next的原理(kmp)
2013-06-18 22:02
357 查看
转自大牛的博客:http://www.cnblogs.com/wuyiqi/archive/2012/01/06/2314078.html
-----------------------
-----------------------
k m x j i
由上,next【i】=j,两段红色的字符串相等(两个字符串完全相等),s[k....j]==s[m....i]
设s[x...j]=s[j....i](xj=ji)
则可得,以下简写字符串表达方式
kj=kx+xj;
mi=mj+ji;
因为xj=ji,所以kx=mj,如下图所示
-------------
-------------
k m x j
看到了没,此时又重复上面的模型了,kx=mj,所以可以一直这样递推下去
所以可以推出一个重要的性质len-next[i]为此字符串的最小循环节(i为字符串的结尾),另外如果len%(len-next[i])==0,此字符串的最小周期就为len/(len-next[i]);
-----------------------
-----------------------
k m x j i
由上,next【i】=j,两段红色的字符串相等(两个字符串完全相等),s[k....j]==s[m....i]
设s[x...j]=s[j....i](xj=ji)
则可得,以下简写字符串表达方式
kj=kx+xj;
mi=mj+ji;
因为xj=ji,所以kx=mj,如下图所示
-------------
-------------
k m x j
看到了没,此时又重复上面的模型了,kx=mj,所以可以一直这样递推下去
所以可以推出一个重要的性质len-next[i]为此字符串的最小循环节(i为字符串的结尾),另外如果len%(len-next[i])==0,此字符串的最小周期就为len/(len-next[i]);
相关文章推荐
- kmp next函数 kmp的周期问题,深入了解kmp中next的原理
- kmp next函数 kmp的周期问题,深入了解kmp中next的原理
- kmp next函数 kmp的周期问题,深入了解kmp中next的原理
- 转载 - kmp next函数 kmp的周期问题,深入了解kmp中next的原理
- kmp next函数 kmp的周期问题,深入了解kmp中next的原理
- 深入分析Java ClassLoader原理(面试问题:你了解java类加载器么)
- KMP中的getnext函数中的周期原理,和重要性质
- 【经典算法】——KMP,深入讲解next数组的求解
- 深入剖析ThreadLocal实现原理以及内存泄漏问题
- 九爷带你了解 深入理解 Memcache 原理
- 深入了解mysql数据传输编码原理
- 深入了解宽带路由器共享上网原理
- rpc学习2-深入了解原理
- Android LayoutInflater原理分析,带你一步步深入了解View(一)
- 深入了解selenium及webdriver原理
- Android LayoutInflater原理分析,带你一步步深入了解View(一)
- 深入了解字符集和编码问题
- Android LayoutInflater原理分析,带你一步步深入了解View(一)
- (转)Android LayoutInflater原理分析,带你一步步深入了解View(一)
- KMP,深入讲解next数组的求解