Учитывая корень дерева, в котором у каждого края есть соответствующая стоимость. Найдите минимальную стоимость для посещения каждого узла дерева.Найдите минимальные затраты для посещения всех узлов дерева.
Рекурсивный решение, которое пришло мне в голову:
- базовый случай, когда узел является листом возврата 0.
- для каждого ребенка с узла рекурсивно вычислить стоимость.
- добавьте все эти затраты, а также дважды добавьте стоимость края от узла к ребенку (как нам нужно для возврата).
- вычитаем стоимость края ребенка, у которого максимальная стоимость. («Жадный» - мы не хотим отступать от ребенка с максимальной стоимостью).
Правильно ли этот подход?
Есть ли лучший способ решить эту проблему?
Я нахожу описание проблемы немного запутанной; как именно выглядел бы «визит»? По-видимому, предложенный алгоритм вычисляет в два раза сумму всех весов ребер. – Codor
Это не то, что означает [минимальное весовое дерево] (https://en.wikipedia.org/wiki/Minimum_spanning_tree). На этой странице есть алгоритмы, вы можете пройти через эти. – harindersingh
@harindersingh Мне не нужно найти минимальное весовое дерево. –