MakarovSuites
Русский
EnglishDeutschРусскийУкраїнськаFrançaisEspañolItalianoPolski
Связь и лицензии

Math

Поиск подстроки: КМП, Бойер–Мур, Рабин–Карп

Сравнивайте наивный поиск, КМП, полный алгоритм Бойера—Мура и поиск скользящим хешем с записью сравнений, префиксными таблицами и перекрывающимися совпадениями.

Поиск подстроки: КМП, Бойер–Мур, Рабин–Карп — Изображение из программы
Изображение из программы

Что попробовать

Сравнивайте реальные проверки символов на своём тексте. КМП использует префиксную таблицу; Бойер—Мур сочетает сдвиги плохого символа и хорошего суффикса; Рабин—Карп проверяет кандидатов скользящего хеша. Счётчики относятся ко всему поиску, анимация показывает записанные сравнения.

Уравнения модуля
Уравнения
Префикс-функция KMP π[i]: наибольший собственный префикс, который также является суффиксом
Сдвиг Бойера–Мура = max(плохой символ, хороший суффикс)
Рабин–Карп: hnext = ((h−old·bᵐ⁻¹)b+new) mod p
Совпадения хешей проверяются посимвольно; перекрывающиеся вхождения сохраняются

Другие эксперименты

К каталогу
Лабиринты: построить и пройти — Изображение из программы

Math

Лабиринты: построить и пройти

Стройте лабиринты поиском в глубину, алгоритмами Прима и Уилсона, затем сравнивайте маршруты поиска в ширину, A* и обхода по стене.

Фурье в двух измерениях: внутри JPEG — Изображение из программы

Math

Фурье в двух измерениях: внутри JPEG

Разлагайте изображения на ортонормированные косинусные блоки 8×8, удаляйте или квантуйте коэффициенты и измеряйте ошибку восстановления.