поиск подстроки
Статьи EssayAI по теме «поиск подстроки»: разборы, методы и примеры.

Алгоритм Рабина-Карпа: поиск подстроки за O(n+m)
Разбираем алгоритм Рабина-Карпа: как полиномиальный хеш и скользящее окно ускоряют поиск подстроки до O(n+m) в среднем, почему бывают ложные совпадения и при чём тут плагиат.

Алгоритм Бойера-Мура-Хорспула: как работает упрощённый BM
Алгоритм Бойера-Мура-Хорспула простыми словами: одна таблица сдвигов по последнему символу окна, среднее время O(n/m), худший случай и сравнение с BM, KMP и Sunday.

Z-функция строки за O(n): построение и применение
Что такое Z-функция строки, как построить массив за линейное время O(n) с помощью Z-блока, чем она отличается от префикс-функции и какие задачи решает на практике.

Алгоритм Кнута-Морриса-Пратта: поиск подстроки за O(n+m)
Алгоритм Кнута-Морриса-Пратта ищет подстроку без возвратов по тексту. Разбираем префикс-функцию по шагам, оцениваем сложность и смотрим понятный пример работы.

Алгоритм Бойера-Мура: почему он ищет подстроку так быстро
Разбираем алгоритм Бойера-Мура: зачем сравнивать паттерн справа налево, как работают эвристики плохого символа и хорошего суффикса и почему поиск выходит сублинейным.