字符串(十二)
字符串(KMP/Z函数/Manacher/字符串哈希/AC自动机/后缀数组/子序列自动机)
一、KMP
记录一下学习 kmp 的过程。
一般题目会给出一个模式串,一个文本串,就是在文本串里面匹配模式串。
模式串 pat, 文本串 txt。
我们如果用暴力算法来求解的话, 肯定是遍历文本串,下标从[0, len(txt) - len(pat)]判断每一个字母是否相同, 不相同的话就往后移动一位
pat, txt = "", ""
for i in range(0, len(txt)-len(pat) + 1):
for j in range(0, len(pat)):
if txt[i+j] == pat[j]:
# 如果全部相等