Изменения
→Наивный алгоритм поиска
== Наивный алгоритм поиска ==
Простейший способ узнать, встречается ли образец в тексте, используя суффиксный массив, {{---}} взять первый символ образца и [[Целочисленный двоичный поиск|бинарным поиском ]] по [[суффиксный массив|суффиксному массиву]] найти диапазон с суффиксами, начинающимися на такую же букву. Так как все элементы в полученном диапазоне отсортированы, а первые символы одинаковые, то оставшиеся после отбрасывания первого символа суффиксы тоже отсортированы. А значит, можно повторять процедуру сужения диапазона поиска уже по второму, затем третьему и так далее символу образца до получения либо пустого диапазона, либо успешного нахождения всех символов образца.
Бинарный поиск работает за время равное <tex> O(\log|s|) </tex>, а сравнение суффикса с образцом не может превышать длины образца.