Изменения

Перейти к: навигация, поиск

Алгоритм Кнута-Морриса-Пратта

20 байт убрано, 23:11, 30 мая 2014
Псевдокод
==Псевдокод==
'''int'''[] kmp('''string''' T, '''string''' P): '''int''' p pl = P.length '''int''' t tl = T.length
'''int'''[] answer
'''int'''[] <tex>\pi</tex> p = [[Префикс-функция#Эффективный_алгоритм|prefixFunction(P + "#" + T)]]
'''int''' count = 0
'''for''' i = 0 .. t tl - 1 '''if''' <tex>\pi</tex>p[p pl + i + 1] == ppl
answer[count++] = i
'''return''' answer

Навигация