Публикации по теме 'binary-search-tree'


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

Как найти значение в BST? Дэнни Рейна
Сложность: Легко Намерение Эта статья должна идти рука об руку с моей предыдущей статьей о том, как добавить значение в бинарное дерево поиска, которое можно найти здесь . Цель этой статьи — показать вам, как найти значение в BST. Давайте сделаем это быстро. Код Как и в нашем последнем решении по вставке значения в BST, мы будем проходить наш BST через итерацию, поэтому, по крайней мере, мы можем начать с некоторого очень простого кода. В конце концов, нам нужно найти узел,..

Бинарные деревья
Последние несколько недель я тратил значительную часть своего времени на подготовку к техническим собеседованиям. Моя последовательность выполнения алгоритма за алгоритмом была несколько раз прервана, и один из таких случаев был связан с бинарными деревьями. Если я и чему-то научился после окончания учебы, так это тому, что важно быть самостоятельным и самим себе учителем. Итак, я нашел отличные ресурсы для изучения бинарных деревьев. Давайте прямо сейчас! Что такое дерево?..

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

Краткое введение в двоичное дерево поиска
Двоичное дерево поиска — это структура данных со следующими свойствами: Каждый узел имеет ключ (все уникальные) Левое поддерево каждого узла имеет меньший ключ Правое поддерево каждого узла имеет больший ключ Объявление узла ключ с сопоставимыми значениями Left указывает на левое поддерево Right указывает на правое поддерево private class Node { private Key key; private Value value; private Node left, right; } Вставка в двоичное дерево поиска..

Вопросы по теме 'binary-search-tree'

DrRacket удаляет корень двоичного дерева поиска
ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ, ЧТО ЭТО ДОМАШНЕЕ! -> Я ищу не прямые примеры кода, а скорее мягкое массирование моих рассуждений ... Меня попросили написать функцию, которая удаляет корень двоичного дерева поиска, выполнив три действия: i) повернув...
1105 просмотров
schedule 17.10.2021

Оптимальные бинарные деревья поиска для поиска преемников?
Существует множество алгоритмов поиска оптимальных двоичных деревьев поиска с учетом набора ключей и связанных вероятностей. выбранных ключей. Созданное таким образом двоичное дерево поиска будет иметь наименьшее ожидаемое время для поиска этих...
759 просмотров

R преобразование дат POSIXct с тегами BST / GMT с использованием as.Date ()
Мне нужно использовать as.Date в индексе объекта зоопарка. Некоторые даты указаны в BST, поэтому при конвертации я теряю день (только) на эти записи. Меня не волнует разница в один час или даже временная часть даты, я просто хочу убедиться, что...
2445 просмотров
schedule 20.10.2021

Ошибка сегментации при удалении всех значений в двоичном дереве поиска
Поэтому у меня проблемы с запуском этой функции, потому что она продолжает возвращать ошибку сегментации. Я сузил его до «удалить корень»; строка, но не знаю, как исправить эту ошибку. Какие-либо предложения? Вот предварительное и постусловие,...
335 просмотров

Дерево двоичного поиска Удалить узел с одним дочерним элементом
У меня есть двоичное дерево поиска, и когда я пытаюсь выполнить случай, когда вы удаляете узел с одним дочерним элементом, вы удаляете этот узел и перемещаете дочерний узел на его место. У меня есть код для этого, но он дает мне плохой указатель,...
2748 просмотров
schedule 31.10.2021

Дерево двоичного поиска по дереву AVL
Насколько мне известно временная сложность между деревьями AVL и Деревья двоичного поиска в среднем одинаковы, а в худшем случае AVL опережают BST. Это дает мне понять, что AVL всегда превосходят BST во всех возможных способах взаимодействия с...
28715 просмотров

двоичное дерево поиска, метод вставки не компилируется
Я пытаюсь написать собственное двоичное дерево поиска на java. Я написал все свои методы и сейчас пытаюсь написать программу для тестирования этих методов. Однако, когда я пытаюсь реализовать свой метод «вставки», он не компилируется, и я понятия...
850 просмотров
schedule 01.12.2021

Проблема реализации при удалении узла двоичного дерева поиска в c ++
Я реализовал метод удаления для двоичного дерева поиска, ссылаясь на псевдокод из CLRS. Ниже приведена реализация с ошибками. Первоначально, когда я удаляю листовой узел, он работает, но когда я удаляю корневой узел, код не работает. В частности -...
1108 просмотров
schedule 10.11.2021

Ошибка двоичного дерева поиска C ++
Я реализую двоичное дерево и делаю некоторую вставку и ищу одно из вставленных значений. Но я получаю сообщение об ошибке памяти: «Поток 1: EXC_BAD_ACCESS (code = 1, address = 0x0) мое двоичное дерево похоже на следующее struct node {...
358 просмотров

Упорядочивание бинарных деревьев поиска
При попытке упорядочить набор чисел в двоичном дереве поиска всегда ли существует один способ упорядочить их, чтобы дерево имело наименьшую высоту, другими словами, наиболее эффективно?
1326 просмотров
schedule 21.09.2021

Найдите замененные узлы в двоичном дереве поиска
Два узла двоичного дерева поиска меняются местами. Входное дерево: 10 / \ 5 8 / \ 2 20 В приведенном выше дереве необходимо поменять местами узлы 20 и 8, чтобы исправить дерево. Дерево вывода: 10 / \...
444 просмотров

ошибка: запрос члена `member` в` cur`, который относится к узлу неклассового типа ‹int› * Двоичное дерево
У меня есть двоичное дерево template<class item_type> struct node{ item_type x; node<item_type> *left; node<item_type> *right; }; template<class item_type, class param> class Tree{...
399 просмотров

Добавление длины пути к каждому узлу в двоичном дереве поиска
У меня есть класс двоичного дерева поиска, и мне было интересно, используя переменную высоты, как я могу использовать его для вычисления длины пути каждого отдельного узла от корня? Например: S / \ E X /...
219 просмотров
schedule 20.09.2021

Является ли двоичное дерево поиска частным случаем двоичной максимальной кучи?
Насколько я понимаю, в максимальной куче значение каждого узла больше или равно всем его дочерним элементам. То же самое относится и к двоичному дереву поиска, но в этой структуре данных также важно, чтобы узлы на одном уровне (братья и сестры) были...
538 просмотров

Останавливает ли оператор return продолжение рекурсивного стека?
Я кодирую алгоритм search_key для двоичного дерева поиска, и у меня возникают проблемы. Я прохожу по двоичному дереву поиска и сравниваю узлы, используя алгоритм обхода по порядку, используя базовую технику рекурсии. Однако, когда условное...
921 просмотров
schedule 15.11.2021

Как сгенерировать случайные приоритеты для узлов Treap?
В большинстве примеров, которые я видел в сети, считается, что существует какой-то внешний генератор случайных чисел, который будет выдавать случайные (отдельные!) Приоритеты. Насколько я помню, существовал способ фактически генерировать приоритеты...
1012 просмотров

Проблема с реализацией дерева avl в java
Привет, ребята, я пытался реализовать дерево AVL, но безуспешно. Я тренируюсь, чтобы понять концепцию. Пока мне удалось вставить в дерево, получить высоту дерева, проверить, сбалансировано ли оно, количество узлов в дереве, найти минимальные и...
95 просмотров
schedule 22.11.2021

Корень двоичного дерева равен нулю
Я пытаюсь создать двоичное дерево поиска, но оно не работает. Я отладил его, и он говорит, что корень равен нулю. Я не понимаю, почему это ноль. Сначала я установил для него значение null в конструкторе, но затем, когда я вызываю метод insert (),...
1571 просмотров

Типы возврата в Racket \ Scheme
Я новичок в Scheme, и мне интересно, как привести в порядок возвращаемые значения из рекурсивной функции, которую я написал в качестве присваивания. Функция просто распечатывает BST в порядке от наименьшего к наибольшему значению. Мой вопрос немного...
352 просмотров
schedule 10.09.2021

Проблема с двоичным деревом поиска C ++ AVL
Для этой программы я создаю самобалансирующееся двоичное дерево поиска AVL для словаря слов, которое даст пользователю возможность искать слово на основе ранга, ранг - это номер узла, найденного под текущим узлом + 1 , или они могут выбрать случайное...
109 просмотров