UniLecs #Task. Maximum Depth of Binary Tree
Published in
1 min readMar 23, 2020
Задача: необходимо написать алгоритм, который по заданному бинарному дереву найдет его максимальную глубину.
Справка: максимальная глубина — это количество узлов вдоль самого длинного пути от корневого узла до самого дальнего конечного узла.
Входные данные: бинарное дерево
Вывод: максимальная глубина исходного дерева.
Пример:
Разбор
Очень часто при решении задач на деревья используется рекурсия. В данном случае мы также ее воспользуемся для расчета максимальной высоты:
- Рекурсивно считаем высоту левого под-дерева от корня.
- Рекурсивно считаем высоту правого под-дерева от корня.
- Выбираем максимальную высоту между правым и левым поддеревом и добавляем к ней 1 (учитываем сам корневой узел).
Реализация
https://gist.github.com/unilecs/883b8a0485821eb7aeacf3d54450ab17