首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
在一个虚拟的数据结构迷宫里,一位年轻的数据结构探险家正在探索
[单选题]
在一个虚拟的数据结构迷宫里,一位年轻的数据结构探险家正在探索KMP算法的奥秘。已知字符串S='
ydysdssydddysysddssy
',模式串t='
ydydyy
',在第一次出现“失配”(s[i]≠t[j])时,i=j=3。下次开始匹配时,i和j的值分别是()
i=5, j=0
i=3, j=1
i=3, j=2
i=5, j=3
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(26)
分享
纠错
1个回答
添加回答
0
一笑而过2222
在KMP算法中,当失配发生时,模式串的下一个匹配位置由**部分匹配表(PMT,或最长前缀后缀匹配长度数组)**决定。已知第一次失配时 i=j=3 (假设索引从0开始),此时需计算模式串 t 的前 j 个字符(即 t[0..2] )的最长相等前缀后缀长度,以确定下次匹配的 j 值,而 i 值保持不变(不回溯)。 步骤分析: 1. 模式串 t 的前3个字符( j=3 ,索引0~2)为 'ydy' - 前缀: 'y' 、 'yd' - 后缀: 'y' 、 'dy' - 最长相等前缀后缀长度为 1( 'y' )。 2. 失配后, j 回溯到最长前缀后缀长度位置 - 新的 j 值为 1(即 PMT[3-1] = PMT[2] = 1 )。 - i 值保持不变(仍为3),继续从当前位置匹配。 答案: 下次开始匹配时, i=3 , j=1 。
发表于 2025-05-08 09:58:03
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
字符串
难度:
1条回答
26收藏
211浏览
热门推荐
相关试题
3.下列关于表中西部省市区2006...
资料分析
言语理解与表达
资料分析
评论
(1)
4.该校1997年男女教师的比例为...
资料分析
言语理解与表达
资料分析
评论
(1)
计算机在工作过程中,若突然停电,(...
计算机常识
普及
C++
Pascal
选择题
评论
(1)
来自
NOIP2008初赛普及组
Mysql中表student_in...
数据库
SQL
评论
(1)
SQL中,下列涉及空值的操作不正确...
SQL
评论
(0)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题