主串T = “abaabaabcabaabc”,模式串S=“abaabc”,采用KMP算法匹配,到匹配成功为止,比较次数是:
序号: 1 2 3 4 5 6
模式串:a b a a b c
next[j]: 0 1 1 2 2 3
关于next数组求法:
前两位为0、1,后面比如第3位,则比较前2个字符串的前后缀公共子串最大长度,比如最后一个c位置,abaab,前缀最大ab,后缀也也是ab,(每个位置结果+1)结果为3。
查看第一趟结束,比较到6号的c,滑动模式串到3号和主串T的6号比。
最终匹配两趟成功,共比较了10次。
01-17
6574
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
04-21
3450
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
01-10
1357
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交