随笔分类 - 字符串
摘要:扩展KMP可以快速求出T与S每个后缀的LCP,时间复杂度和空间复杂度都比后缀数组要优良很多。
阅读全文
摘要:hash[i]=(hash[i-1]*p+idx(s[i]))%mod p和mod取不同的较大的素数
阅读全文
摘要:注意最长公共子串(Longest CommonSubstring)和最长公共子序列(LongestCommon Subsequence, LCS)的区别:子串(Substring)是串的一个连续的部分,子序列(Subsequence)则是从不改变序列的顺序,而从序列中去掉任意的元素而获得的新序列;更
阅读全文
摘要:KMP是一种字符串模式匹配算法,在目标串中查找模式串的方法。 朴素查找方法在遇到目标串字串具备大量重复前缀且和模式串大部分吻合,其时间复杂度就会衰退为o(N*M),严格来说是o((N-M+1)*M)。 因此,在数据量很大的时候我们需要一种线性复杂度的算法。 KMP的优势是通过next数组记录了模式串
阅读全文