我已经研究了StackOverflow上的各种解决方案,试图了解Boyer-Moore算法是如何工作的,但我正在寻找更多-所以为了一步一步地说明该算法是如何工作的(视觉学习对我来说要好得多)。
我试图理解这张图片,但我不完全理解为什么在比较6的时候它会跳过:

我更愿意看到它更好地被绘制出来,但如果你能通过伪代码告诉我为什么会发生这种情况,我会很感激。
谢谢。
发布于 2021-08-03 21:03:20
Boyer Moore算法中最重要的是最后一次出现的表,它是模式的预处理。它存储模式中每个不同字符出现的最后一个索引。
这些步骤可以分解为如下所示,其中我对您的可视化进行了一些修改。

下面解释了换班步骤
对齐
对齐
对齐
将模式的索引4与不匹配的文本字符a.对齐
https://stackoverflow.com/questions/53623770
复制相似问题