社区
数据结构与算法
帖子详情
kmp算法中,串'ababaaababaa'的next数组是什么
hjklasdfgl
2011-04-20 09:53:05
A 012345678999
B 012121111212
C 011234223456
D 0123012322345
还是没有搞懂next数据如何计算。大侠指点一下!
...全文
1362
1
打赏
收藏
kmp算法中,串'ababaaababaa'的next数组是什么
A 012345678999 B 012121111212 C 011234223456 D 0123012322345 还是没有搞懂next数据如何计算。大侠指点一下!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
绿色夹克衫
2011-04-20
打赏
举报
回复
http://www.matrix67.com/blog/archives/115
这样吧,给你matrix67的blog看看,讲的比较细致。
KMP算法
计算next
数组
和nextval
数组
(通俗易懂)
KMP算法
(举例说明) 例:给出一个字符
串
序列:
ababaaababaa
。利用
KMP算法
分别求出next
数组
和nextval
数组
分析:
数组
索引:0-n 逻辑索引:1-n next
数组
: 1、next[0]=0,next[1]=1; 2、当判断一个字母X的next值时,需要将前一个位置的字母Y和其next值m相同的逻辑索引的字母Z进行比较,注意是Y和Z比较,并不是X; 逻辑索引值 1 2 … N-1 N 字符
串
Z Y … Y X next
数组
0 1 … 1 分别有以下两种情况
【数据结构-
串
】手算
KMP算法
的next和nextval
数组
【数据结构-
串
】手算
KMP算法
的next和nextval
数组
KMP 算法
中
的 next
数组
KMP 算法
中
对 next
数组
的理解 next
数组
的意义 此处 next[j] = k;则有 k 前面的浅蓝色区域和 j 前面的浅蓝色区域相同; next[j] 表示当位置 j 的字符
串
与主
串
不匹配时,下一个需要和主
串
比较的字
串
位置在 next[j] 处;有下图: 若当前位置 j 与主
串
某一个字符不匹配,则下一次比较的是 K 与主
串
的当前位置,这个 K 也就是next[j];由于两个浅蓝色区域相同,因此 K 前面的区域肯定与主
串
相同,不需比较;如下图: 由上图可知,K 前面的区域不需比较; next
KMP入门级别算法详解--终于解决了(next
数组
详解)
对于正常的字符
串
模式匹配,主
串
长度为m,子
串
为n,时间复杂度会到达O(m*n),而如果用
KMP算法
,复杂度将会减少线型时间O(m+n)。 设主
串
为ptr="
ababaaababaa
";,要比较的子
串
为a=“aab”;
KMP算法
用到了next
数组
,然后利用next
数组
的值来提高匹配速度,我首先讲一下next
数组
怎么求,之后再讲匹配方式。 next
数组
详解 首先是理解KMP...
串
′
ababaaababaa
′的next
数组
(求next
数组
思路与实例)
刚刚开始遇到这个问题说实话完全懵逼,然后简单搜了下,还是理解的模棱两可。最后看了几篇博客,现在才算是真正的理解了。首先在将例子之前先说说这个next
数组
求解的思路:第一位的next的值是0,第二位的next的值为1,后面求解每一位的next的值时。首先将前一位与其next值对应的内容进行比较,如果相等...
数据结构与算法
33,008
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章