Sobes.tech
Back to questions
Middle
2

Есть дерево с интерфейсом INode (value: number, left?: INode, right?: INode). Напиши функцию, которая обходит дерево и возвращает сумму всех value

Companies where asked
ТранснефтьТранснефть

Answer from AI

sobes.tech AI

Вот пример функции на TypeScript, которая рекурсивно обходит дерево с интерфейсом INode и возвращает сумму всех значений value:

interface INode {
  value: number;
  left?: INode;
  right?: INode;
}

function sumTree(node?: INode): number {
  if (!node) return 0;
  return node.value + sumTree(node.left) + sumTree(node.right);
}

// Пример использования:
const tree: INode = {
  value: 10,
  left: { value: 5 },
  right: { value: 15, left: { value: 3 } }
};

console.log(sumTree(tree)); // 33