Форум программистов, компьютерный форум CyberForum.ru

бинарное древо (удаление) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ STL обращение к элементу list http://www.cyberforum.ru/cpp-beginners/thread43094.html
Помогите исправить ошибку. #include <list> #include <iostream> using namespace std; class PeopleB{ public: int xxx; }; const int EnKolB=4; int main(){
C++ Для чего нужен define? Для чего нужен оператор define? например код #define N 20 /* сколько первых чисел посчитать */ void main(){ int fibs, index; http://www.cyberforum.ru/cpp-beginners/thread43051.html
Работа со строками. Связное хранение строк. C++
Постановка задачи В текстовом файле хранится последовательность слов. Предполагается, что слово содержит не более 20 букв, слова отделяются друг от друга одним или бо-лее пробелами, количество слов в файле не ограничено. Требуется: 1. Прочитать исходный текст из файла и поместить его в памяти, использовать однонаправленные циклические цепочки . Каждое звено текста размещается в памяти...
Нужно исправить 2 ошибки в коде C++
собственно, САБЖ. нужно исправить 2 ошибки в коде, чтобы его можна было скомпилить и сделать из него ехе-шник. код немалый, тому залил на sendspace: http://sendspace.com/file/ubkkh6 времени немного - до утра понедельника..выручайте, народ, пожалуйста
C++ Вывод случайных текстов на экран http://www.cyberforum.ru/cpp-beginners/thread42999.html
помогите пожалуйста, мне нужен код для случайных выводов текстов на экран
C++ обход массива рендом. Дан массив 10 на 10. Рендом выбираем точку, сравниваем элемент... Затем нужно опять выбирать рендом элемент, но так что бы не выбирать тот, который уже брали. Как можно запомнить, что выбирали уже, а что нет? подробнее

Показать сообщение отдельно
Юляшка
3 / 3 / 1
Регистрация: 14.12.2008
Сообщений: 30
06.07.2009, 00:44     бинарное древо (удаление)
Чтобы удалить элемент из дерева поиска, вначале мы отслеживаем путь поиска элемента, начиная с корня и вниз до узла n, содержащего элемент. В этот момент могут возникнуть три ситуации
Узел n имеет пустой левый потомок. В этом случае ссылка на n (записанная в предке n, если он есть) заменяется на ссылку на правого потомка n.
У узла n есть непустой левый потомок, но правый потомок пустой. В этом случае ссылка вниз на n заменяется ссылкой на левый потомок узла n.
Узел n имеет два непустых потомка. Найдем последователя для n (назовем его m), скопируем данные, хранящиеся в m, в узел n и затем рекурсивно удалим узел m из дерева поиска.
Единственное,что могу дать так это теорию=) Я в деревьях не сильна...Мож поможет=)
 
Текущее время: 16:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru