KMP算法——nextval的会用计算
对nextval的实现还暂时停留在会算的地步上
No | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
a | b | a | c | b | a | a | a | b | c | a | b | a | a | |
next | 0 | 1 | 1 | 2 | 1 | 1 | 2 | 2 | 2 | 3 | 1 | 2 | 3 | 4 |
nextval | 0 | 1 | 0 | 2 | 1 | 0 | 2 | 2 | 1 | 3 | 0 | 1 | 0 | 4 |
第i号元素(记为b)——与对应的next[i]号元素(记为a)比较
不同则b的nextval[i] =b的 next[i]——若相同,那么b的nextval = a的nextval
不同不变,同变
1a | nextval[1]=0 |
2b |
不同不变,nextval=1 |
3a |
相同则变,变为a的nextval |
4c |
不同不变,nextval=2 |