Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2015, 18:48   #1
Ascold
Новичок
Джуниор
 
Регистрация: 28.10.2015
Сообщений: 2
По умолчанию Операции с бинарными деревьями

Доброго времени суток!
Создал бинарное упорядоченное дерево, описанное следующим образом:
Код:
struct tree {
	char info;
	struct tree *left;
	struct tree *right;
};
Нужно поменять местами корневой элемент с максимальным. Максимальный нахожу так:
Код:
struct tree* maximum(struct tree *r)//Находит максимальный элемент
{
	if (r->right == NULL)
		return r;
	else
		return maximum(r->right);
}
Подскажите, пожалуйста, как можно это сделать. Сам никак не соображу.
С уважением.
Ascold вне форума Ответить с цитированием
Старый 28.10.2015, 18:57   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А как у тебя корневой описан?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.10.2015, 23:28   #3
Ascold
Новичок
Джуниор
 
Регистрация: 28.10.2015
Сообщений: 2
По умолчанию

корень описан вот так:
Код:
struct tree *root
П.С. весь код:https://ideone.com/981K5p
Ascold вне форума Ответить с цитированием
Старый 29.10.2015, 07:53   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну тады так:
Код:
struct tree *root, *max;
...
max=maximum(root);
if(max){char c=max->info;max->info=root->info;root->info=c;}
Это если понимать твою задачу буквально.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с программой с бинарными деревьями sunny_alice Паскаль, Turbo Pascal, PascalABC.NET 0 08.05.2011 16:25