Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.71
error3456
0 / 0 / 0
Регистрация: 22.02.2011
Сообщений: 8
#1

Объединение 2-х бинарных деревьев в одно - C++

22.02.2011, 20:55. Просмотров 3065. Ответов 6
Метки нет (Все метки)

Необходима функция объединения 2-х бинарных сбалансированных деревьев в одно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2011, 20:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Объединение 2-х бинарных деревьев в одно (C++):

Слияние бинарных деревьев - C++
Слияние - это функция выбора элемента из двух Берем два дерева; функцию, которая выбирает один элемент из двух T fun(T x1, Tx2); ...

Класс бинарных деревьев. Наследование - C++
Доброго времени суток! Имеется задание написать абстрактный класс бинарного дерева и класс рациональных чисел. От них отнаследовать классы...

Нужен совет по алгоритмам, обход бинарных деревьев - C++
Всем привет! Вопрос может показаться немного глупым но все же: есть тема курсача "Обход бинарных деревьев методом перебора" очень...

Создать функции ввода/вывод для бинарных деревьев - C++
Не могу создать функции ввода/вывод для бинаных деревьев. очень срочно нужно! скажите где ошибка... Вот текст: #include ...

Объединение двух бинарных файлов - C++
Как сделать программу которая считывает числа (упорядоченные по возрастанию) из двух бинарных файлов f и g, и сливает их в один...

Массив: Учащиеся участвовали в посадке деревьев. Сколько деревьев было посажено - C++
1)Учащиеся 8-х классов участвовали в посадке деревьев. 8-а посадил 100 деревьев, 8-б —122 дерева, 8-в — 98 деревьев, 8-г — 104 дерева, 8-д...

6
dxdy
97 / 97 / 5
Регистрация: 14.06.2010
Сообщений: 284
22.02.2011, 21:00 #2
после объединения полученное дерево тоже должно быть сбалансированным?
0
error3456
0 / 0 / 0
Регистрация: 22.02.2011
Сообщений: 8
22.02.2011, 21:27  [ТС] #3
желательно
0
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
22.02.2011, 22:19 #4
C
1
2
3
4
5
void unite(node* root1, node* root2){
    if(root1->left!=NULL) unite(root1->left, root2);
    root2->insert(root1->value);
    if(root1->right!=NULL) unite(root1->right, root2);
}
0
error3456
0 / 0 / 0
Регистрация: 22.02.2011
Сообщений: 8
23.02.2011, 16:11  [ТС] #5
только тут второе дерево не удаляется.
0
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
23.02.2011, 16:29 #6
ну, можно добавить ф-цию удаления за'insert'ченного узла, как то так
C++
1
2
3
4
5
6
7
void unite(node* root1, node* root2){
    if(root1->left!=NULL) unite(root1->left, root2);
    if(root1->right!=NULL) unite(root1->right, root2);
    root2->insert(root1->value);
    delete root1;
    root1=NULL;
}
0
error3456
0 / 0 / 0
Регистрация: 22.02.2011
Сообщений: 8
27.02.2011, 17:52  [ТС] #7
а как проверить сбалансированность дерева?
0
27.02.2011, 17:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2011, 17:52
Привет! Вот еще темы с ответами:

Почему так(комбинации бинарных и не бинарных вводов и выводов)? - C++
#include <string> #include <iostream> #include <fstream> #include <iomanip> using namespace std; int main() { ...

Реализация деревьев - C++
Я вот сделал простое дерево (максимально дочерних узлов в корне - 3). Теперь нужно доработать, чтобы были списки сыновей. Помогите...

Слияние деревьев - C++
Сижу, мучаюсь, не могу понять что подразумевается в задании о слиянии деревьев. Подвесить вершину второго дерева к какому-нить листу 1-го?...

Турнирная сортировка деревьев - C++
Здравствуйте, программа турнирная сортировка деревьев. Но проблема в том, что при компиляции выдает ошибку. Помогите, пожалуйста ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.