Изменения

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

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

272 байта добавлено, 17:20, 2 мая 2015
м
Построение суффиксных ссылок
=== Построение суффиксных ссылок ===
ЗаметимЛегко увидеть, что в процессе построения суффиксного дерева уже построенные суффиксные ссылки никак не изменяются. Опишем процесс построения суффиксной Поэтому осталось сказать, как построить суффиксные ссылки для новой созданной внутренней вершинысозданных вершин. Пусть Рассмотрим новую внутреннюю вершина <tex>v</tex>, которая была создана в результате продления суффикса <tex>s[kj..i-1]</tex> была создана новая внутренняя вершина . Вместо того, чтобы искать, куда должна указывать суффиксная ссылка вершины <tex>v</tex>. Не будем специально искать, куда должна указывать ссылка. Перейдем поднимаясь от корня дерева для этого, перейдем к следующему шагу текущей фазы, на котором суффикс продлению следующего суффикса <tex>s[kj+1..i-1]</tex> будет увеличен до суффикса . И в этот момент можно проставить суффиксную ссылку для вершины <tex>s[k+1..i]v</tex>. Этот суффикс может так же оканчиваться Она будет указывать либо на ребре или в уже созданной раннее внутренней вершинесуществующую вершину, если следующий суффикс закончился в листе онней, очевиднолибо на новую созданную. То есть суффиксные ссылки будут обновляться с запаздыванием. Внимательно посмотрев на все три правила продления суффиксов, заканчиваться не может. Тогда в первом случае будет создана новая внутренняя вершина <tex>u</tex>можно осознать, а во втором эта вершина уже будет существовать. Проведем суффиксную ссылку из что для вершины <tex>v</tex> точно найдётся на следующей фазе внутренняя вершина, в вершину <tex>u</tex>которую должна вести суффиксная ссылка.
=== Оценка числа переходов ===

Навигация