Учитывая последовательность операций:
а * Ь * а * 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
Целью курса является минимизация числа операций
Я рассматриваю суффикс рода.
Меня особенно интересуют линейные эвристики времени или решения. Операции "*" на самом деле являются матричными умножениями.