Изменения

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

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

52 байта убрано, 10:43, 14 апреля 2015
Линейный алгоритм
}}
Когда используется 3-е правило продления суффикса, никакой работы делать не нужно, так как требуемый суффикс уже в дереве есть. Поэтому можно заканчивать текущую итерацию после первого же использования этого правила. Так как лист навсегда останется листом, зададим метку ребра ведущего в этот лист как <tex>t[i..xn]</tex>, где <tex>xn</tex> {{---}} ссылка на переменную, хранящую конец текущей подстрокиэто длина исходного текста. На следующих итерациях к этому ребру может применяться правило ответвления, но при этом будет меняться только левый(начальный) индекс <tex>i</tex>. Таким образом мы сможем удлинять все суффиксы, заканчивающиеся в листах за <tex>O(1)</tex>.
=== Итоговая оценка времени работы ===
275
правок

Навигация