这个地方写得不错:http://www.cppblog.com/mythit/archive/2009/04/21/80633.html
其实AC自动机是借用了KMP的next(fail)来进行实现
具体是在一个Trie(字典树)中来实现的
时间复杂度O(n+k) (k为待处理子串长度)
所以KMP真是一个神奇的算法,特别是next数组的构造。
时间: 2024-10-24 05:36:29
这个地方写得不错:http://www.cppblog.com/mythit/archive/2009/04/21/80633.html
其实AC自动机是借用了KMP的next(fail)来进行实现
具体是在一个Trie(字典树)中来实现的
时间复杂度O(n+k) (k为待处理子串长度)
所以KMP真是一个神奇的算法,特别是next数组的构造。