Публикации по теме 'trees'
Программа для поиска максимальной глубины двоичного дерева в Python
Сегодня мы будем работать над популярным вопросом, который задают на технических собеседованиях в компаниях MAANG и других компаниях.
Учитывая root бинарного дерева, вернуть его максимальную глубину .
Максимальная глубина бинарного дерева — это количество узлов на самом длинном пути от корневого узла до самого дальнего конечного узла.
class Node:
def __init__(self, data):
self.data = data
self.left = None
self.right = None
def find_depth(root):..
Обход дерева
Что ж, у меня есть 4 разных типа обходов дерева, которые приходят мне в голову, когда я думаю об этом:
Чтобы Предзаказ PostOrder Вертикальный обход заказа Обход порядка уровней [рассматривается в другом уроке]
Inorder Traversal
Algorithm Inorder(tree)
1. Traverse the left subtree, i.e., call Inorder(left-subtree)
2. Visit the root.
3. Traverse the right subtree, i.e., call Inorder(right-subtree)
Моя реализация на основе Java для этого
PostOrder Traversal..
Раскрась, пожалуйста, как красно-черные деревья
Раскрась, пожалуйста, как красно-черные деревья
У нас есть что-то вроде бинарных деревьев поиска. Действительно простая структура данных. Но у нас также есть множество различных древовидных структур: splays, AVL, красно-черные деревья и так далее. Это почему? Почему недостаточно BST? А именно, причина в том, что они могут расти неравномерно, вне нашего контроля. Таким образом, в худшем случае временная сложность поиска может быть линейной, что по большому счету не имеет смысла для..