Изменения

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

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

2 байта добавлено, 00:37, 6 апреля 2016
Алгоритм
'''Алгоритм Бойера-Мура за линейное время (Турбо-алгоритм)''' (англ. ''Turbo Boyer-Moore'') является улучшением [[Алгоритм Бойера-Мура|алгоритма Бойера-Мура]]. Алгоритм, разработанный группой учёных во главе с М.Крочемором, предлагает другой подход к коротким алфавитам и заодно решает вторую проблему — квадратичную сложность в худшем случае.
==Алгоритм==
Турбо-алгоритм Бойера-Мура не нуждается в дополнительном препроцессинге и требует только постоянную дополнительную память относительно оригинального алгоритма Бойера-Мура. Он состоит в запоминании сегмента текста, который соответствует суффикс суффиксу шаблона во время последней попытки (и только тогда, когда сдвиг хорошего суффикса был выполнен).
Эта методика представляет два преимущества:
# можно перепрыгнуть через этот сегмент;
251
правка

Навигация