Вопросы к Поиску с Алисой
Алгоритм Кнута — Морриса — Пратта (КМП-алгоритм) используется для поиска подстроки в строке. intuit.ru Он основывается на том, что после частичного совпадения начальной части подстроки с соответствующими символами строки становится известна пройденная часть строки. intuit.ru Это позволяет вычислить некоторые сведения, с помощью которых затем быстро продвинуться по строке. intuit.ru
Идея алгоритма состоит в том, чтобы не прикладывать подстроку к строке со сдвигом всего в один символ, а максимально увеличить это расстояние, сократив таким образом количество сравнений. web.snauka.ru
Алгоритм работает за линейное время от длины обеих строк. users.math-cs.spbu.ru Он находит все вхождения образца в строку и особенно эффективен на больших текстах или слабых процессорах. habr.com