Ctrl K

Все пути от корня до листьев

Лёгкая
Дан корень root двоичного дерева. Листом называется вершина без детей. Для каждого листа запишите путь от корня до него строкой: значения вершин по порядку, разделённые стрелкой -> без пробелов, например "8->5->2". Верните список всех таких строк, по одной на каждый лист. Порядок строк в списке не важен.
Пример 1
root=tree_node([8, 3, 5, None, None, 2, 7]) → ['8->3', '8->5->2', '8->5->7']

Листья — 3, 2 и 7. До 3 ведёт путь 8->3, до 2 — 8->5->2, до 7 — 8->5->7.

Пример 2
root=tree_node([-4, None, 6]) → ['-4->6']

Единственный лист — 6, путь до него -4->6.

Пример 3
root=tree_node([12]) → ['12']

Корень сам является листом, путь состоит из одной вершины.

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

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