Изменения

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

Алгоритм Укконена

333 байта добавлено, 11:44, 21 апреля 2015
Алгоритм за O(n3)
'''Замечание:''' Казалось бы, что можно просто добавлять все суффиксы строки в дерево по очереди, и это уже было бы <tex>O(n^2)</tex>. Но оптимизировать такой квадратичный алгоритм до линейного немного сложнее, хотя именно это и делает [[алгоритм МакКрейта]]. Оптимизируя описанный выше алгоритм, мы получим более простой алгоритм за <tex>O(n)</tex>.
 
== Реализация алгоритма за O(n<sup>3</sup>) ==
for i = 0 .. n
for j = 0 .. i
спускаемся от корня до конца текущего <tex>j</tex>-го суффикса
совершаем продление по одному из правил символом <tex>s_{i}</tex>
== Продление суффиксов ==
Анонимный участник

Навигация