Двоичное дерево - это иерархическая структура данных, в которой каждый узел имеет ноль, один или не более двух дочерних элементов. Каждый узел содержит «левый» указатель, «правый» указатель и элемент данных. «Корневой» указатель представляет самый верхний узел в дереве. Каждый узел в структуре данных напрямую связан с произвольным числом узлов с обеих сторон, называемых дочерними. Пустой указатель представляет двоичное дерево. Не существует определенного порядка организации узлов в бинарном дереве. Узлы без дочерних узлов называются конечными узлами или внешними узлами..
Проще говоря, он определяет организованную функцию маркировки на узлах, которая, в свою очередь, присваивает какое-то случайное значение каждому узлу. Все, что имеет двух дочерних и один родительский узел, является двоичным деревом. Двоичные деревья используются для хранения информации, которая образует иерархию, такую как файловая система, на вашем персональном компьютере. В отличие от массивов, деревья не имеют верхнего предела количества узлов, потому что они связаны с помощью указателей, таких как связанные списки. Основные функции двоичного дерева включают представление иерархических данных, сортировку списков данных, обеспечение эффективных операций вставки / удаления и т. Д. Узлы дерева представлены с использованием структур на языке Си.
Бинарное дерево поиска - это тип структуры данных бинарного дерева, в которой узлы упорядочены по порядку, поэтому также называется «упорядоченным бинарным деревом». Это структура данных на основе узлов, которая обеспечивает эффективный и быстрый способ сортировки, поиска и поиска данных. Для каждого узла элементы в левом поддереве должны быть меньше или равны ключу в его родительском узле (LP). Там не должно быть дубликатов ключей. Проще говоря, это особый вид структуры данных бинарного дерева, которая эффективно хранит и управляет элементами в памяти.
Он обеспечивает быстрый доступ к информации, вставку и удаление данных, а также может использоваться для реализации таблиц поиска, которые позволяют искать элементы по их уникальным ключам, например, искать телефонный номер человека по имени. Уникальные ключи сортируются организованно, так что поиск и другие динамические операции могут выполняться с использованием бинарного поиска. Он поддерживает три основные операции: поиск элементов, вставка элементов и удаление элементов. Двоичное дерево поиска позволяет быстро находить элементы, хранящиеся в дереве, так как каждый ключ узла тщательно сравнивается с корневым узлом, который отбрасывает половину дерева.
Бинарное дерево | Двоичное дерево поиска |
Двоичное дерево - это специализированная форма дерева, которая представляет иерархические данные в древовидной структуре. | Двоичное дерево поиска - это тип двоичного дерева, которое хранит ключи в отсортированном порядке для быстрого поиска. |
Каждый узел должен иметь не более двух дочерних узлов, причем каждый узел соединен ровно с одного другого узла направленным ребром. | Значения узлов в левом поддереве меньше или равны значению корневого узла, а узлы правого поддерева имеют значения, большие или равные значению корневого узла. |
Относительного порядка организации узлов нет. | Это следует за определенным порядком того, как узлы должны быть организованы в дереве. |
Это в основном иерархическая структура данных, которая представляет собой набор элементов, называемых узлами. | Это вариант двоичного дерева, в котором узлы расположены в относительном порядке. |
Он используется для быстрого и эффективного поиска данных и информации в древовидной структуре. | В основном используется для вставки, удаления и поиска элементов. |
Хотя оба моделируют иерархическую древовидную структуру, представляющую коллекцию узлов, где каждый узел представляет значение, они довольно сильно отличаются друг от друга с точки зрения того, как они могут быть реализованы и использованы. Двоичное дерево следует одному простому правилу, согласно которому каждый родительский узел имеет не более двух дочерних узлов, тогда как Двоичное дерево поиска - это всего лишь вариант двоичного дерева, которое следует в относительном порядке относительно того, как узлы должны быть организованы в дереве..