qq_43412960 2020-05-06 09:48 采纳率: 76.5%
浏览 149
已采纳

这是一个关于数据结构kmp算法的相关问题

kmp算法,可以加快找字串位置的速度。
为什么加快呢,因为在每次比较过程中,找到了模式串对称的小串,然后直接移过去。
比如,主串abcabcabe,模式串abcabe。
第一次,匹配到主串的第二个c,失败,然后根据前面串的对称串ab,
第二次首先匹配第二个ab的首位置。
我的疑问是,跳过中间的字符匹配,会不会造成误差呢?比如少了些匹配成功的机会

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-05-06 10:03
    关注

    不会。跳过去的是前缀肯定不符合的,它肯定不能构成模式串

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?