第一范文网 - 专业文章范例文档资料分享平台

《字符串模式匹配KMP算法》教学课例设计

来源:用户分享 时间:2025/6/1 12:08:26 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

计算机与信息学院 程玉胜 提供 KMP算法软件请联系:chengysh@aqtc.edu.cn

练习:求T=?AAAAAAAAAAB? 的模式函数值,并用后面的求模式函数值函数验证。 7 . next[n] 意义 :

设在字符串S中查找模式串T,若S[m]!=T[n],那么,取T[n]的模式函数值next[n], (1)、 next[n]= 0 表示S[m]和T[1]间接比较过了,不相等,下一次比较 S[m+1] 和

T[1]

(2)、 next[n]=1 表示比较过程中产生了不相等,下一次比较 S[m] 和T[1]。

(3)、 next[n]= k 表示S[m]的前k个字符与T中的开始k个字符已经间接比较相等

了,下一次比较S[m]和T[k]相等吗?

(4)、 其他值,不可能。 课后习题: 1. 2. 3. 4.

求串’ababaaababaa’ 的next函数值。 模式串t=’abcaabbcaabdab’,求模式串的next和nextval函数的值。 给出字符串‘abacabaaad’在KMP算法中的next和nextval数组。 S=’aabcbabcaabcaaba’,T=’bca’,画出以T为模式串,S为目标串的匹配过程。

习题答案:

1. 求串’ababaaababaa’ 的next函数值。 【解答】 j 串 next[j] 1 a 0 2 b 1 3 a 1 4 b 2 5 a 3 6 a 4 7 a 2 8 b 2 9 a 3 10 11 12 b 4 a 5 a 6 2. 模式串t=’abcaabbcaabdab’,求模式串的next和nextval函数的值。 【解答】 j 串 next[j] 1 a 0 2 b 1 3 c 1 4 a 1 5 a 2 6 b 2 7 b 3 8 c 1 9 a 1 10 11 12 13 a 2 b 2 d 3 a 1 14 b 2

计算机与信息学院 程玉胜 提供 KMP算法软件请联系:chengysh@aqtc.edu.cn

nextval[j] 0 1 1 0 2 1 3 1 0 2 1 3 0 1 3.给出字符串‘abacabaaad’在KMP算法中的next和nextval数组。 【解答】 j 串 next[j] nextval[j] 1 a 0 0 2 b 1 1 3 a 1 0 4 c 2 2 5 a 1 0 6 b 2 1 7 a 3 0 8 a 4 4 9 a 2 2 10 d 2 2 4. 对S=’aabcbabcaabcaaba’,T=’bca’,画出以T为模式串,S为目标串的匹配过程。 【解答】

bca的next值数为: 011 a a b c b a b c a a b c a a b a b c b

b c a b c b b c a

《字符串模式匹配KMP算法》教学课例设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c8vie14cem29s4tl8l1f0_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top