数据结构----next函数解释

来源:互联网 发布:惠州网络问政平台 入户 编辑:程序博客网 时间:2024/06/04 17:40

 首先,将第一与第二个NEXT分别写为0,1.

现在来求第三个,如果你求的这个字符的前一个字符或几个连续字符(要以你所求字符的前一个字符为结束字符)与第一个字符或从第一个字符开始连续的几个字符相同,那么就要有相同字符的个数加1,求出来的结果就是你所求字符NEXT!
如下题:
序号 0  1  2  3        10
      b  c  a   b  b  a      d
 next 0    1  2    1  2   4
0号与第1号字符的NEXT值分别为0,1.2号字符的NEXT值为:此时看第1号字符,它与第0号字符不相同,则它的NEXT值为1,再看第4号字符:3号字符为a,它与第0号字符相同,则为1+1=2;6号与第10:6号前是5,虽然它与第0号字符不相同,但是45两号的字符ab01两号的字符相同,故为2+1=3;10号前是9,789abc,012也是abc,故为3+1=4!
懂否?

原创粉丝点击