java版的AC多模式匹配算法
AC多模式匹配算法特点:应用有限自动机巧妙地将字符比较转化为了状态转移。此算法有两个特点:一是扫描文本时完全不需要回溯,二是时间复杂度为O(n)与关键字的数目和长度无关,但所需时间和文本长度以及所有关键字的总长度成正比。算法思想:用多模式串建立一个确定性的树形有限状态机,以主串作为该有限状态机的输入,使状态机进行状态的转换,当到达某些特定的状态时,说明发生模式匹配。AC多模式匹配算法的实现可分预处理和搜索查找两个阶段。在预处理阶段根据待匹配的模式串组生成有限状态机;搜索查找阶段状态机根据输入的文本串进行状态跳转,当到达某一状态时,该状态有匹配的模式串,则匹配成功。AC状态机包括goto、fail和output3个函数。实现步骤:1.构造字
下载地址
用户评论
这个我试用了一下,很好用,效率也很高。真心不错
正好需要这个,就找到这了,赞一个
这个真心流弊,已经用到项目上了
真心好,很适合初学者
很棒、很棒!
经典算法,很不错的
很好用 速度还可以
一定要感谢下,暑期实验室项目,后来毕业设计都用到了!非常感谢
不知道为什么这个AC算法的实现这么复杂 很奇怪
如果是java的就更好了