Понимание таблицы «Good Suffix Shift» алгоритма поиска Бойера-Мура - PullRequest
5 голосов
/ 24 июня 2011

Пожалуйста, помогите мне понять алгоритм поиска строки Бойера-Мура "Good Suffix Shift" -Table .

Что произошло, когда i==3?

Естьв шаблоне нет подстроки "_MAN".Таким образом, значение сдвига должно быть 8 (как это было, когда i==1).

Почему это 6?

1 Ответ

6 голосов
/ 24 июня 2011

Нет подстроки "_MAN", но строка начинается с "AN", поэтому, если вы сместитесь на 6, вы можете получить шаблон, который выглядит следующим образом

_ M A N _ _ _ _ _ _
_ _ A N P A N M A N
...