0 / 0 / 0
Регистрация: 21.09.2017
Сообщений: 7
|
||||||
1 | ||||||
Бинарное дерево на C++03.04.2019, 14:09. Показов 1173. Ответов 1
Метки нет Все метки)
(
Доброго времени суток. Выношу себе мозг с реализацией этого дерева уже несколько дней.
![]() Задание: Реализовать BST (Binary Search Tree). Дерево должно быть шаблонизировано - нужно продемонстрировать работу на хотя бы значениях int, double, string. Нужно реализовать операции добавления элемента и поиска элемента. Нужно реализовать автоматическую балансировку. Для демонстрации ее работы в пустое дерево добавляем последовательно значения от 0 до 30 и выводим дерево в консоль/svg. Глубина каждой ветки не должна быть больше 5. Вывод дерева в консоль/svg Свой код я прикрепляю к теме. Помогите, пожалуйста, добить это. ![]()
0
|
|
03.04.2019, 14:09 | |
Ответы с готовыми решениями:
1
Исходное бинарное дерево превратить в бинарное дерево поиска, при этом сохранив его структуру Бинарное дерево. Удалить из дерева часть вершин так, чтобы оставшееся дерево стало пирамидой
Бинарное дерево |
33 / 22 / 12
Регистрация: 13.09.2017
Сообщений: 74
|
|||||||||||||||||||||||||||||||
04.04.2019, 00:15 | 2 | ||||||||||||||||||||||||||||||
При реализации прямого обхода, у вас, вместо рекурсивного вызова этой же функции, вызывается функция симметричного обхода:
Проблема с поиском уже не так проста) Дело в том, что указателю root, после выполнения функции поиска, каждый раз присваивается адрес искомого узла. Когда вы вызовете функцию поиска для ключа 55, этого ключа найдено не будет, и указателю на корень дерева будет присвоен nullptr. Затем вы попытаетесь найти элемент с ключом 5, и получите следующее:
0
|
04.04.2019, 00:15 | |
Помогаю со студенческими работами здесь
2
Бинарное дерево
C++, Бинарное дерево Бинарное дерево Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |