Skip to content
EntityQ623818· pop 38· linked from 213 articles

Двоичное дерево поиска

Sign in to save

Also known as BST, ordered binary tree, sorted binary tree

структура данных в виде дерева с сортированными узлами

Key facts

Type
tree
Invented by
P.F. Windley, A.D. Booth , A.J.T. Colin , and T.N. Hibbard
Operation
Average
Search
Θ(log n )
Insert
Θ(log n )
Delete
Θ(log n )
Space
Θ( n )

via Wikipedia infobox

Wikidata facts

Instance of
data structure
Subclass of
binary tree
Image
Binary search tree.svg
Show 6 more facts
Commons category
Binary search trees
time of discovery or invention
1960-00-00
discoverer or inventor
Andrew Donald Booth
inception
1960-01-01
studied by
algorithmics
Sources (3)

via Wikidata · CC0

Article · Русский

Двоичное дерево поиска (англ. binary search tree, BST) — двоичное дерево, для которого выполняются следующие дополнительные условия (свойства дерева поиска): * оба поддерева — левое и правое — являются двоичными деревьями поиска; * у всех узлов левого поддерева произвольного узла X значения ключей данных меньше либо равны, нежели значение ключа данных самого узла X; * у всех узлов правого поддерева произвольного узла X значения ключей данных больше, нежели значение ключа данных самого узла X. Очевидно, данные в каждом узле должны обладать ключами, на которых определена операция сравнения меньше. Как правило, информация, представляющая каждый узел, является записью, а не единственным полем данных. Однако это касается реализации, а не природы двоичного дерева поиска. Для целей реализации двоичное дерево поиска можно определить так: * Двоичное дерево состоит из узлов (вершин) — записей вида (data, left, right), где data — некоторые данные, привязанные к узлу, left и right — ссылки на узлы, являющиеся детьми данного узла — левый и правый сыновья соответственно. Для оптимизации алгоритмов конкретные реализации предполагают также определения поля parent в каждом узле (кроме корневого) — ссылки на родительский элемент. * Данные (data) обладают ключом (key), на котором определена операция сравнения «меньше». В конкретных реализациях это может быть пара (key, value) — (ключ и значение), или ссылка на такую пару, или простое определение операции сравнения на необходимой структуре данных или ссылке на неё. * Для любого узла X выполняются свойства дерева поиска: key[left[X]] < key[X] ≤ key[right[X]], то есть ключи данных родительского узла больше ключей данных левого сына и нестрого меньше ключей данных правого. Двоичное дерево поиска не следует путать с двоичной кучей, построенной по другим правилам. Основным преимуществом двоичного дерева поиска перед другими структурами данных является возможная высокая эффективность реализации основанных на нём алгоритмов поиска и сортировки. Двоичное дерево поиска применяется для построения более абстрактных структур, таких, как множества, мультимножества, ассоциативные массивы.

Abstract from DBpedia / Wikipedia · CC BY-SA