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

Удаление вершины дерева поиска - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Распараллеливание алгоритмов http://www.cyberforum.ru/cpp-beginners/thread616837.html
Доброго дня всем. Встал вопрос о выборе темы,связанной с распараллеливанием алгоритмов. Какие задачи наиболее "восприимчивы" к распараллеливанию? Есть ли польза при распараллеливании сортировок? P.S. Буду рад, если кто-нибудь подскажет какие-либо ресурсы, связанные с данной проблемой
C++ Текст в файле:Структура - знаки зодиака Задание: Текст в файле:Структура - знаки зодиака. Структура с полями: фамилия,год рождения,знак зодиака. Ввести с клавиатуры знак Зодиака Найти в файле запись с таким знаком и вывести его. Добавлено через 29 секунд Плиз помогите http://www.cyberforum.ru/cpp-beginners/thread616828.html
C++ Реализовать в виде функций набор подпрограмм
Здраствуйте помогите пожалуйста решить задание : Реализовать в виде функций набор подпрограмм для выполнения операций с многочленами от одной переменной (первый многочлен степени m, второй — степени n): 1) сложения; 2) вычитания; 3) возведения в натуральную степень k; 4) вычисления производной от многочлена ; 5) вычисления значения в точке x0. Используя эти...
C++ Что нужно добавить в программу?
Народ помогите пожалуйста, почему не сохраняются внесённые записи #include "stdafx.h" #include "cstdlib" #include <iostream> #include <conio.h> using namespace std; class Account {
C++ Поиск в файлах с различными форматами http://www.cyberforum.ru/cpp-beginners/thread616781.html
Добрый день, собственно появилась задача - в винде открывать файлы различных форматов и затем производить писк по ключевым словам в теле файла. Так как необходимо работать с весьма различными по свое структуре форматами (.djvu,.pdf, файлы офиса от MS) возникают вопросы следующие: 1) Каким образом лучше определять форматы файла? Т.е. я понимаю, что необходимо открывать на бинарное чтение файлы,...
C++ Структуры. Сортировка Здравствуйте, ув. форумчане. Я студент 1ого курса и только недавно начал изучать C++, учился по видеоурокам, но застрял на структурах, не очень понял как все работает. Нам нужно было сделать программу "Студенческий поток". Программа должна добавлять\удалять\редактировать информацию о студенте, добавлять\удалять\редактировать информацию о группах, поиск по студентам и тд. это все получилось... подробнее

Показать сообщение отдельно
neske
1425 / 792 / 55
Регистрация: 26.03.2010
Сообщений: 2,729
30.06.2012, 12:35     Удаление вершины дерева поиска
рекурсивная функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void del(node *&cur) { 
    if (cur->left == NULL || cur->right == NULL) { // если есть один потомок, или их вообще нет
        node* sav = cur;
        if (cur->left != NULL) // перетаскиваем потомка на место вершины, а саму вершину удаляем
            cur = cur->left;
        else
            cur = cur->right;
        delete sav;
    } else { // дальше идет процедура удаления, если у вершины есть оба потомка
        node** p2 = &cur->right;
        while ((*p2)->left) p2 = &((*p2)->left);
        cur->key = (*p2)->key;
        del(*p2);
    }
}
 
Текущее время: 07:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru