Ctrl K

Сумма левых листьев

Лёгкая
Дан корень root двоичного дерева. Лист — вершина без детей. Левым листом назовём лист, который является левым ребёнком какой-то вершины. Верните сумму значений всех левых листьев. Если таких нет, верните 0.
Пример 1
root=tree_node([6, 2, 8, None, 4, 7, 1]) → 7

Листья: 4, 7 и 1. Левый ребёнок своего родителя только 7 (левый у 8). Четвёрка — правый ребёнок двойки, единица — правый ребёнок восьмёрки. Ответ 7.

Пример 2
root=tree_node([-3, -5, 2, None, None, 9]) → 4

Левые листья: -5 (левый у корня) и 9 (левый у 2). Сумма 4.

Пример 3
root=tree_node([10]) → 0

Корень — лист, но он ничей не ребёнок, поэтому не считается. Ответ 0.

Ограничения
  • 1 ≤ число вершин ≤ 1000
  • -1000 ≤ Node.val ≤ 1000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиДеревья-близнецы ЛёгкаяДерево-зеркало ЛёгкаяВысота дерева ЛёгкаяГлубина ближайшего листа ЛёгкаяПуть до листа с нужной суммой Лёгкая
загружаем Python…
Вход
root=tree_node([6, 2, 8, None, 4, 7, 1])
Ожидается
7

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 97 тестов на сервере, включая скрытые.