Moore的UTexas网页逐步介绍了这两种算法(他还提供了各种技术资料):
- 克努斯·莫里斯·普拉特
- 博耶·摩尔
据该人本人说,
经典的Boyer-
Moore算法遭受以下现象的困扰:它无法在像DNA这样的小字母上高效地工作。跳过距离往往会随着模式长度的增长而停止增长,因为子字符串会频繁出现。通过记住更多已经匹配的内容,可以在文本中获得更大的跳过。一个人甚至可以安排``完美的记忆’‘,因此最多只能查看每个字符一次,而Boyer-
Moore算法虽然是线性的,但可以多次检查文本中的字符。其他人已经在文献中探讨了这种记住更多的想法。它需要非常大的表或状态机。
但是,对BM进行了一些修改,使小字母搜索变得可行。



