扩展的KMP算法,可以在Ο(n + m)的时间复杂度内计算出模板串与文本串的每一个后缀的最长公共前缀,即LCP(T[i:n],P). KMP算法所解决的单模板字符串匹配问题,求得的匹配点是LCP = m的位置,属于该算法的子问题.扩展的KMP算法可以获得更多信息. 定义:文本串长度为n,模板串长度为m next[i]:模板串P[i:m]和P的最长公共前缀 extend[i]:文本串T[i:n]和P的最长公共前缀(待求) 习惯上使用左闭右开区间,下标从0开始,字符串采用Python的表示法 算法思…