next函数值仅取决於模式串本身与主串无关
next数组的生成这里有两种方式:
我们要生成这个模式串的next数组,那么首先第一件事就是为这些字符标号
最终生成的next字符串为:
方法二 字符串下标匹配
5.next[7]:到这就有问题了,前一位s[6]所对应嘚next下标为4所以,s[6]和s[4]对比不相同!那么,继续看s[4]所对应的next下标 为2,s[6]不动永远作为对比方,与s[4]对应next下标数字为序号再次进行对比以此类推,s[2]=b,
这里我们只介绍最简单的生成nextval数组的方法nextval数组第一个字符永远为0。
既然我们上面生成了next数组nextval数组直接通过next數组便可生成。
若不同填入next的值;若相同,填入该值对应的序号的nextval.