Дана последовательность операций:
a * b * a * b * a * a * b * a * b
есть ли способ получить оптимальное подразделение, позволяющее повторно использовать подстроку.
создание
a * b * a * b * a * a * b * a * b => c * a * c, где c = a * b * a * b
, а затем, увидев, что
a * b * a * b => d * d, где d = a * b
в целом сокращая 8 начальных операций до 4, описанных здесь?
(c = (d = a * b) * d) * a * c
Конечно же, цель состоит в том, чтобы минимизировать количество операций
Я рассматриваю своего рода суффиксное дерево.
Меня особенно интересуют эвристики или решения с линейным временем. где c = a * b * a * b, а затем ...
Дана последовательность операций:
a * b * a * b * a * a * b * a * b
есть ли способ получить оптимальное подразделение для повторного использования подстроки.
делая
a * b * a * b * a * a * b * a * b => c * a * c, где c = a * b * a * b
, а затем, увидев, что
a * b * a * b => d * d, где d = a * b
в целом сокращает 8 начальных операций до 4, описанных здесь?
(c = (d = a * b) * d) * a * c
Целью, конечно же, является минимизация количества операций
Я рассматриваю своего рода суффиксное дерево.
Меня особенно интересуют эвристики или решения с линейным временем. где c = a * b * a * b, а затем ...
Дана последовательность операций:
a * b * a * b * a * a * b * a * b
есть ли способ получить оптимальное подразделение для повторного использования подстроки.
делая
a * b * a * b * a * a * b * a * b => c * a * c, где c = a * b * a * b
, а затем, увидев, что
a * b * a * b => d * d, где d = a * b
в целом сокращает 8 начальных операций до 4, описанных здесь?
(c = (d = a * b) * d) * a * c
Конечно же, цель состоит в том, чтобы минимизировать количество операций
Я рассматриваю своего рода суффиксное дерево.
Меня особенно интересуют эвристики или решения с линейным временем. где c = a * b * a * b
, а затем, учитывая, что
a * b * a * b => d * d, где d = a * b
, в целом сокращая 8 начальных операций в 4 описанные здесь?
(c = (d = a * b) * d) * a * c
Конечно же, цель состоит в том, чтобы минимизировать количество операций
Я рассматриваю своего рода суффиксное дерево.
Меня особенно интересуют эвристики или решения с линейным временем. где c = a * b * a * b
, а затем, учитывая, что
a * b * a * b => d * d, где d = a * b
, в целом сокращая 8 начальных операций в 4 описанные здесь?
(c = (d = a * b) * d) * a * c
Целью, конечно же, является минимизация количества операций
Я рассматриваю своего рода суффиксное дерево.
Меня особенно интересуют эвристики или решения с линейным временем. Операции "*" на самом деле являются матричным умножением.