Назад к задачам
Junior — Senior
13

Нахождение наибольшей суммы пути в бинарном дереве при единственном посещении узлов

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Требуется реализовать функцию, которая вычисляет максимальную сумму узлов вдоль любого пути, при условии, что каждый узел может быть пройден не более одного раза. Путь может начинаться и заканчиваться в любых вершинах дерева — не обязательно от корня к листу. На приведённом ниже примере максимальная сумма достигается по пути 5 → -3 → 20, дающему 30.

    (-10)
     /
  (9)   (20)
       /   \
    (-3)   (8)
     /     / \
  (5)  (-4)  (-2)
   /
(-2)

function getMaxPathSum(root) {}