前言: 要想理解以下思路必须先具备的知识:1、BF算法的具体实现。2、为什么可以利用以母串首元素相同的模式串优化查找算法。 1、KMP算法具体实现 [图片] 2、kmp算法的核心思想: 利用母串中以母串首字母开头的模式串来简化回退步骤 3、next数组初始化 [图片] 为什么j每次回退到next[j]? 目的是利用已匹配好的模式串,因为已匹配的模式串中必定会存在可以使匹配继续执行的模式串,这种回退方式效率是始终大于等将j每次回退到零的。 4、next函数的改进(nextval的值代替next数组) 求ne...【查看原文】