【发布时间】:2012-09-21 07:00:24
【问题描述】:
Knuth-Morris-Pratt 搜索算法和 Boyer-Moore 搜索算法的主要区别是什么?
我知道 KMP 在 X 中搜索 Y,试图在 Y 中定义一个模式,并将该模式保存在一个向量中。我也知道 BM 更适用于小词,例如 DNA (ACTG)。
它们在工作方式上的主要区别是什么?哪个更快?哪一个对计算机不那么贪婪?在哪些情况下?
【问题讨论】:
-
BM 在“自然文本”而不是小集合上效果更好
标签: algorithm theory string-search