KMP算法
KMP算法用来求单模式串匹配。
简单来说,你需要给你的模式串计算一个 \(nxt\) 数组,使得 \(nxt[i]\) 是长度为 \(i\) 时的最长公共前后缀。
匹配到文本串的一个位置 \(i\) 时,相当于把文本串长度为 \(i\) 的前缀拿出来,找它的最长后缀(前缀的后缀即是子串)使得能与模式串的某个前缀匹配,理解了这个之后 \(nxt\) 数组的含义以及用法应该就明朗了。
- 例题:
由于博主比较菜,所以有很多东西待学习,大部分文章会持续更新,另外如果有出错或者不周之处,欢迎大家在评论中指出!