Существует ли быстрый (время сложности O(1)) способ создания суффиксного дерева строки S[2..m ] из суффиксного дерева строки S[1..m]?
Я знаком с Укконеном, поэтому знаю, как составить быстрое суффиксное дерево строки S[1..m+1] из суффиксного дерева строки S[1..m], но не смог применить алгоритм для обратной ситуации .
S[1..m]
. Когда у вас есть лист, я думаю (но не пытался на самом деле записать доказательство), что удаление этого листа и (при необходимости) внутреннего узла, который указывает на него, должно быть O (1). Поиск листа занимает O(m), но вы можете использовать дополнительное пространство O(1) для хранения указателя на самый глубокий лист в дереве, что сократит время поиска листа до O(1). После удаления листа вам придется обновить этот указатель, но это можно сделать за O(1) амортизированное время, если у вас есть суффиксные ссылки в дереве. - person jogojapan   schedule 07.05.2013