摘要:
AC自动机是个很神奇的数据结构。 "这" 是一道模板题。 首先考虑将模式串们构成$trie$树。用$nxt_i^c$表示从$i$走$c$这个字母会走到的儿子,$S_i$表示从根走到$i$中间经过的边上的字母按顺序连接。 然后定义$fail_i$指向与$S_i$的后缀匹配的最深前缀$S_j$。 于是, 阅读全文
摘要:
KMP是个很神奇的算法。 "这" 是一道模板题。 设$S$为模式串,$T$为查询串。 由于正常的字符串匹配实在太慢($O(n^2)$),所以就要考虑这一位匹配不成功时需要移至模式串的哪一位继续匹配。 可以发现,应该移到与当前匹配到的位置的后缀相等的最长前缀。 所以,对于每一个位置$i$,记录$fai 阅读全文