Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Алгоритм Карпа-Рабина при поиске подстроки в строке на Python Не хотелось бы формально излагать алгоритм, а подвести к нему понятными рассуждениями. Попробую. Одним из вариантов поиска подстроки в строке ранее был изложен простой подход. Проходя по строке проверяем совпадение части строки, которую мы ищем, с соответствующим срезом в строке, где мы ищем. Если есть совпадение, то сравниваем всю строку. По сути две проверки. Но этими двумя проверками мы пытаемся оптимизировать алгоритм. Ведь второй проверки может и не понадобиться. Сегодня что-то подобное, но не совсем. Как говорится, есть нюансы. В общем случае идея очень проста. В качестве первичного поиска вместо среза попробуем взять число, которое характеризует строку. Это так называемое хеш-функция (hash-функция) строки. Общая идея заключается в том, что сравнивать числа быстрее и
Программирование на языке Python. Поиск подстроки в строке. Алгоритм Карпа-Рабина
30 мая 202430 мая 2024
59
2 мин