首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
设主串S='abcdefgabcad',模式串t='abca
[单选题]
设主串S='abcdefgabcad',模式串t='abcad',采用KMP算法进行模式匹配,第一次出现“失配”(S[i]≠t[j])时,i=j=3,则下次开始匹配时,i和j的值分别是()
i=0, j=0
i=2, j=0
i=2, j=1
i=3, j=0
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(47)
分享
纠错
2个回答
添加回答
1
一笑而过2222
--- ### 1. 部分匹配表(next数组)的定义 部分匹配表的作用是记录模式串 t 中每个位置 j 之前的最长相等前缀和后缀的长度。具体来说,对于模式串 t = t0 t1 t2 ... t(m-1),next[j] 表示子串 t[0:j-1] 的最长相等前缀和后缀的长度。 --- ### 2. 模式串 t = 'abcad' 的部分匹配表计算 我们逐步计算模式串 t = 'abcad' 的部分匹配表。 #### 初始化 - j = 0:next[0] = -1(表示模式串的开头,没有前缀和后缀) - j = 1:next[1] = 0(单个字符,没有前缀和后缀) #### 计算过程 - j = 2:子串 t[0:1] = 'ab' - 前缀:'a' - 后缀:'b' - 最长相等前缀和后缀的长度为 0。 - next[2] = 0 - j = 3:子串 t[0:2] = 'abc' - 前缀:'a', 'ab' - 后缀:'c', 'bc' - 最长相等前缀和后缀的长度为 0。 - next[3] = 0 - j = 4:子串 t[0:3] = 'abca' - 前缀:'a', 'ab', 'abc' - 后缀:'a', 'ca', 'bca' - 最长相等前缀和后缀是 'a',长度为 1。 - next[4] = 1 - j = 5:子串 t[0:4] = 'abcad' - 前缀:'a', 'ab', 'abc', 'abca' - 后缀:'d', 'ad', 'cad', 'bcad' - 最长相等前缀和后缀的长度为 0。 - next[5] = 0 --- ### 3. 部分匹配表(next数组)的最终结果 对于模式串 t = 'abcad',部分匹配表如下: j | 0 | 1 | 2 | 3 | 4 | 5 | next[j]| -1| 0 | 0 | 0 | 1 | 0 | --- ### 4. 失配时的回溯 当 i = j = 3 时发生失配,即 S[3] = 'd' 与 t[3] = 'a' 不匹配。此时: - 根据部分匹配表,next[3] = 0。 - 因此,j 会回溯到 0,而 i 保持不变。 --- ### 5. 最终答案 下次开始匹配时: - i = 3(主串指针不变) - j = 0(模式串指针回溯到 0)
发表于 2025-03-10 13:33:31
回复(0)
0
沐歌云游
当主串
S[i] ≠ 模式串t[j]
(失配)时,
i保持不变
,
j回溯到next[j]
,然后从
S[i]
与
t[next[j]]
开始重新匹配。
next[j]
的定义是:模式串中
t[0..j-1]
(即
j
之前的子串)的
最长前缀后缀公共长度
(前缀和后缀不包含子串本身)。
本题模式串
t = "abcad"
(索引从
0
开始,
j
的范围为
0~4
),
计算
next
数组如下:
模式串索引j
模式串字符t[j]
子串t[0..j-1]
最长前缀后缀公共长度
next[j]
0
'a'
空串(无前后缀)
约定为-1
-1
1
'b'
"a"
0(单个字符无前后缀)
0
2
'c'
"ab"
0(前缀 "a"≠后缀 "b")
0
3
'a'
"abc"
0(前缀 "a"/"ab"≠后缀 "bc"/"c")
0
4
'd'
"abca"
1(前缀 "a"= 后缀 "a")
1
发表于 2025-09-01 00:06:04
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
查找
来自:
2024年春招-淘天集...
难度:
2条回答
47收藏
616浏览
热门推荐
相关试题
小苯的魔法染色
字符串
贪心
二分
评论
(14)
来自
2024年春招-淘天集团...
var globalVar = "...
Javascript
评论
(1)
来自
2024年春招-淘天集团...
下面 C++ 代码的运行结果为()...
C++
评论
(2)
来自
2024年春招-淘天集团...
在 Linux 命令中,有关 le...
Linux
评论
(2)
来自
2024年春招-淘天集团...
在HTTPS传输的网页中,WebS...
网络基础
评论
(1)
来自
2024年春招-淘天集团...
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题