Изменения

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

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

7 байт добавлено, 00:26, 5 мая 2016
Псевдокод
==Псевдокод==
Стадия препроцессинга совпадает со стадией препроцессинга в [[Алгоритм Бойера-Мура|алгоритме Бойера-Мура]], функция вычислений сдвигов плохих символов и функция вычисления хороших суффиксов не меняются, меняется только сам алгоритм, в него добавляется обработка турбо-сдвигов.
<font color=green>//x - шаблон, y {{---}} текст, m {{---}} длина шаблона, n - длина текста</font>
'''function''' TBM(x: '''char'''[m], y: '''char'''[n]): '''List<int>'''
'''int''' i = 0
'''int''' u = 0
'''int''' shift = m
<font color=green>//answer {{- --}} массив, в который мы сохраняем индексы, начиная с которых, подстроки текста совпадают с шаблоном</font>
'''List<int>''' answer
251
правка

Навигация