KMP算法next函数?这个 next函数具体指的是什么?它是怎么求的?原理是什么?请大家不要复制粘贴

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/04 06:18:50
KMP算法next函数?这个 next函数具体指的是什么?它是怎么求的?原理是什么?请大家不要复制粘贴
xRNP~V3I& M\ۅl:Jgj@AN #+}s-<1L9߾{vYtS+UBsv?h (r^5#*wu~MM K`៷3Hg9}iqrl FYàBhIЂiQ-X^C?/**>eͮpO@ȳԽ+j{hU}-"{$uC:= W0/'l˦pJn[ΡBw|8Րe!+ʧht 'm)w3hd)DC]Eh݃fK\T^WF$AnY43|䐤^A1N /mZST6O

KMP算法next函数?这个 next函数具体指的是什么?它是怎么求的?原理是什么?请大家不要复制粘贴
KMP算法next函数?
这个 next函数具体指的是什么?它是怎么求的?原理是什么?
请大家不要复制粘贴

KMP算法next函数?这个 next函数具体指的是什么?它是怎么求的?原理是什么?请大家不要复制粘贴
设主串为S = "s1s2 ... sn",模式为T = "t1t2 ... tm"
当“失配”(si tj)时,模式串T “向右滑动” 的可行距离有多远? 或者说,下一步si 应该与模式串中的哪个字符比较,这完全取决于模式串,与主串无关
因此,可以预先为模式串设定一个数组next[j],当“失配” (si tj)时,i 不变,j 改为next[j]
0 当j = 1时,不比较
next[j] = max{k, 1