177
правок
Изменения
→Псевдокод
Основная функция алгоритма Бойера-Мура
'''function''' BM('''char'''[n] y, '''char'''[m] x): '''vector <int>''' '''vector <int>''' answer <font color=green>// вектор, содержащий все вхождения подстроки в строку</font>
'''if''' m == 0
<font color=green>// Предварительные вычисления</font>
'''while''' x[j] == y[i]
'''if''' j == 0
--i
--j
i += max(bmGs[m - 1 - j], bmBc[y[i]])
'''if''' (answer == <tex> \varnothing </tex>)
answer.push_back(-1) <font color=green>// Искомая подстрока не найдена</font>
'''return''' answer
==Пример==