Алгоритм Бойера-Мура
Версия от 17:33, 4 мая 2014; Kabanov (обсуждение | вклад)
Алгоритм Бойера-Мура, разработанный двумя учеными – Бойером (Robert S. Boyer) и Муром (J. Strother Moore), считается наиболее быстрым среди алгоритмов общего назначения, предназначенных для поиска подстроки в строке. Важной особенностью алгоритма является то, что он выполняет сравнения справа налево в отличии от многих других алгоритмов.
Содержание
Асимптотики
Фаза предварительных вычислений требует
времени и памяти В худшем случае поиск требует сравнений. В лучшем случае требует сравнений.В 1991 году Р.Коул доказал следующую теорему:
Теорема (Richard Cole): |
В худшем случае требуется сравнений в случае шаблона с периодом равным длине самого шаблона. |
Доказательство: |
Доказательство [1] |