Описание тега binary-search-tree
В информатике двоичное дерево поиска (BST), иногда также называемое упорядоченным или отсортированным двоичным деревом, представляет собой структуру данных двоичного дерева на основе узлов, в которой каждый узел имеет сопоставимый ключ (и соответствующее значение) и удовлетворяет ограничению, согласно которому key в любом узле больше, чем ключи во всех узлах в левом поддереве этого узла, и меньше, чем ключи во всех узлах в правом поддереве этого узла. У каждого узла не более двух дочерних узлов. Каждый дочерний элемент должен быть либо листовым узлом, либо корнем другого двоичного дерева поиска. Левое поддерево содержит только узлы с ключами меньше, чем у родительского узла; правое поддерево содержит только узлы с ключами больше, чем у родительского узла. BST также являются динамическими структурами данных, и размер BST ограничен только объемом свободной памяти в операционной системе.Главное преимущество двоичных деревьев поиска заключается в том, что они остаются упорядоченными, что обеспечивает более быстрое время поиска, чем многие другие структуры данных. Общие свойства деревьев двоичного поиска следующие:
Левое поддерево узла содержит только узлы с ключами меньше ключа узла.
Правое поддерево узла содержит только узлы с ключами больше ключа узла.
Левое и правое поддерево также должны быть двоичным деревом поиска.
У каждого узла может быть до двух узлов-преемников.
Не должно быть повторяющихся узлов.
От корня к каждому другому узлу существует уникальный путь.
Как правило, информация, представленная каждым узлом, представляет собой запись, а не отдельный элемент данных. Однако в целях упорядочения узлы сравниваются по их ключам, а не по какой-либо части связанных с ними записей.