• 2022-05-28
    已知模式串t=‘abcaabbabcab’写出用KMP法求得的每个字符对应的next数组。
  • 模式串t的next和nextval值如下:j1 2 3 45 6 7 8 9 10 11 12t串a b c a a b b a b c a bnext[j]0 1 1 1 2 2 3 1 2 3 4 5nextval[j]0 1 1 0 2 1 3 0 1 1 0 50 1 1 1 2 2 3 1 2 3 4 5或者是-1 0 0 0 1 1 2 0 1 2 3 4

    内容

    • 0

      中国大学MOOC: 设abcaabbabcab是模式串, 则它的next数组元素依次为( )。

    • 1

      设定目标串(主串)和模式串,求模式串的next数组和改进nextval数组,然后分别给出使用Brute-Force和KMP(next数组和改进的nextval数组两种)算法进行模式匹配时的比较过程、比较次数及匹配结果,模式匹配时从目标串的第1个字符开始。 目标串:abcaabbabcabaacbacba 模式串:abcabaa

    • 2

      在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与目标串位i比较时,两字符不相等,则i的位移方式是( )。

    • 3

      在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与目标串位i比较时,两字符不相等,则i的位移方式是( )。 A: j不变 B: j=next[j] C: i不变 D: i=next[j]

    • 4

      在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与目标串位i比较时,两字符不相等,则j的位移方式是( )。 A: j=next[j] B: j不变 C: i=next[j] D: i不变