Изменения

Перейти к: навигация, поиск

Турбо-алгоритм Бойера-Мура

2 байта убрано, 00:43, 6 апреля 2016
Алгоритм
===Применение турбо-сдвига в случае <tex>|v| < |u|</tex>===
При <tex>|v| < |u|</tex>, если сдвиг плохого символа больше, то совершаемый сдвиг будет больше, либо равен <tex>|u| - 1</tex>. В этом случае символы <tex>c</tex> и <tex>d</tex> различны, так как мы предположили, что предыдущий сдвиг был сдвигом хорошего суффикса. Тогда сдвиг больший, чем турбо-сдвиг, но меньший <tex>|u| + 1</tex> совместит <tex>c</tex> и <tex>d</tex> с одним и тем же символом <tex>v</tex>. Значит, если сдвиг плохого символа больше, то мы можем применить сдвиг больший, либо равный <tex>|u| + 1</tex>.
[[Файл:Tbm2.png|800px|center]]
Нельзя совместить символы <tex>c \neq d</tex> с одним и тем же символом v.
251
правка

Навигация