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

Anonim

Что такое двоичное дерево?

Двоичное дерево - это иерархическая структура данных, в которой каждый узел имеет ноль, один или максимум два ребенка. Каждый узел содержит «левый» указатель, «правый» указатель и элемент данных. «Корневой» указатель представляет собой самый верхний узел в дереве. Каждый узел в структуре данных напрямую связан с произвольным числом узлов с обеих сторон, называемых дочерними. Нулевой указатель представляет двоичное дерево. Нет конкретного порядка, как узлы должны быть организованы в двоичном дереве. Узлы без дочерних узлов называются листовыми узлами или внешними узлами.

Проще говоря, он определяет организованную функцию маркировки на узлах, которая, в свою очередь, присваивает каждому случайному значению случайное значение. Все, что имеет два дочерних элемента и один родительский узел, является двоичным деревом. Двоичные деревья используются для хранения информации, которая формирует иерархию, такую ​​как файловая система на вашем персональном компьютере. В отличие от массивов, деревья не имеют верхнего предела для количества узлов, потому что они связаны с помощью указателей, например Linked Lists. Основные функции двоичного дерева включают представление иерархических данных, сортировку списков данных, предоставление эффективных операций вставки / удаления и т. Д. Узлы деревьев представлены с использованием структур в C.

Что такое двоичное дерево поиска?

Двоичное дерево поиска - это тип структуры данных двоичного дерева, в которой узлы упорядочены по порядку, поэтому также называются «упорядоченным двоичным деревом». Это узловая структура данных, которая обеспечивает эффективный и быстрый способ сортировки, поиска, поиска данных. Для каждого узла элементы в левом поддереве должны быть меньше или равны ключу в его родительском узле (LП). Не должно быть дубликатов ключей. Проще говоря, это особый вид структуры данных двоичного дерева, которая эффективно хранит и управляет элементами в памяти.

Он позволяет быстро получать информацию, вставлять и удалять данные, а также может использоваться для реализации поисковых таблиц, которые позволяют искать элементы по их уникальным ключам, например, искать номер телефона человека по имени. Уникальные ключи сортируются организованно, так что поиск и другие динамические операции могут выполняться с помощью двоичного поиска. Он поддерживает три основные операции: поиск элементов, вставку элементов и удаление элементов. Двоичное дерево поиска позволяет быстро извлекать элементы, хранящиеся в дереве, так как каждый ключ узла тщательно сравнивается с корневым узлом, который отбрасывает половину дерева.

Разница между двоичным деревом и деревом двоичного поиска

  1. Определение двоичного дерева и дерева двоичного поиска - Двоичное дерево - иерархическая структура данных, в которой у ребенка может быть ноль, один или максимум два дочерних узла; каждый узел содержит левый указатель, правый указатель и элемент данных. Нет конкретного порядка, как узлы должны быть организованы в дереве. Двоичное дерево поиска, с другой стороны, представляет собой упорядоченное двоичное дерево, в котором существует относительный порядок организации узлов.
  2. Состав из Двоичное дерево и дерево двоичного поиска- Самый верхний узел в дереве представляет собой корневой указатель в двоичном дереве, а левый и правый указатели представляют собой меньшие деревья с обеих сторон. Это специализированная форма дерева, которая представляет данные в древовидной структуре. С другой стороны, двоичное дерево поиска - это тип двоичного дерева, в котором все узлы в левом поддереве меньше или равны значению корневого узла, а значение правого поддерева больше или равно значению корневого узла.
  3. операция из Двоичное дерево и дерево двоичного поиска- Двоичное дерево может быть любым, у которого есть двое детей и один родитель. Обычными операциями, которые могут выполняться на двоичном дереве, являются вставка, удаление и обход. Двоичные деревья поиска - это больше сортированных двоичных деревьев, которые позволяют быстро и эффективно искать, вставлять и удалять элементы. В отличие от бинарных деревьев, двоичные деревья поиска сохраняют свои ключи сортированными, поэтому поиск обычно реализует двоичный поиск операций.
  4. Типы из Двоичное дерево и дерево двоичного поиска- Существуют разные типы двоичных деревьев, общее из которых - «Полное двоичное дерево», «Полное двоичное дерево», «Perfect Binary Tree» и «Extended Binary Tree». Некоторые типичные типы деревьев двоичного поиска включают в себя T-деревья, деревья AVL, деревья Splay, деревья танго, деревья Red-Black и т. Д.

Двоичное дерево и двоичное дерево поиска: сравнительная таблица

Двоичное дерево Двоичное дерево поиска
Двоичное дерево - это специализированная форма дерева, представляющая иерархические данные в древовидной структуре. Двоичное дерево поиска - это тип двоичного дерева, который хранит ключи в отсортированном порядке для быстрого поиска.
Каждый узел должен иметь не более двух дочерних узлов, причем каждый узел соединен от одного другого узла с помощью направленного ребра. Значение узлов в левом поддереве меньше или равно значению корневого узла, а узлы в правом поддереве имеют значения, которые больше или равны значению корневого узла.
Нет никакого относительного порядка в том, как узлы должны быть организованы. Он следует окончательному порядку, как узлы должны быть организованы в дерево.
Это в основном иерархическая структура данных, которая представляет собой набор элементов, называемых узлами. Это вариант двоичного дерева, в котором узлы расположены в относительном порядке.
Он используется для быстрого и эффективного поиска данных и информации в древовидной структуре. Он в основном используется для вставки, удаления и поиска элементов.

Резюме двоичного дерева и дерева двоичного поиска

В то время как оба моделируют иерархическую древовидную структуру, представляющую совокупность узлов с каждым узлом, представляющим значение, они совершенно отличаются друг от друга с точки зрения того, как они могут быть реализованы и использованы. Бинарное дерево следует одному простому правилу: каждый родительский узел имеет не более двух дочерних узлов, тогда как двоичное дерево поиска - это просто вариант двоичного дерева, который следует за относительным порядком организации узлов в дереве.