Авторизация
Забыли пароль? Введите ваш е-мейл адрес. Вы получите письмо на почту со ссылкой для восстановления пароля.
После регистрации вы можете задавать вопросы и отвечать на них, зарабатывая деньги. Ознакомьтесь с правилами, будем рады видеть вас в числе наших экспертов!
Вы можете войти или зарегистрироваться, чтобы добавить ответ и получить бонус.
Высота дерева — это максимальное количество уровней, начиная от корня дерева до самого дальнего листа. Есть несколько способов узнать высоту дерева:
1. Рекурсивный подход:
— Если дерево пустое, то его высота равна 0.
— Иначе, высота дерева равна максимальной высоте его поддеревьев плюс 1. Для каждого поддерева рекурсивно вычисляем его высоту и выбираем максимальное значение.
2. Итеративный подход:
— Используя обход в ширину (BFS) или обход в глубину (DFS), мы можем посетить каждый узел дерева и отслеживать его уровень. Высота дерева будет равна максимальному уровню, на котором мы находимся.
Вот пример кода на языке Python, использующий рекурсивный подход:
«`python
class Node:
def __init__(self, data):
self.data = data
self.left = None
self.right = None
def tree_height(node):
if node is None:
return 0
else:
left_height = tree_height(node.left)
right_height = tree_height(node.right)
return max(left_height, right_height) + 1
# Пример использования
root = Node(1)
root.left = Node(2)
root.right = Node(3)
root.left.left = Node(4)
root.left.right = Node(5)
print(«Высота дерева:», tree_height(root)) # Выводит 3
«`
Этот код создает дерево с корнем 1 и вычисляет его высоту, которая равна 3.
Напишите, почему вы считаете данный ответ недопустимым: