主串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次。