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

Удаление узла дерева - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Неправильная конвертация типов в MVS С++ 2008 http://www.cyberforum.ru/cpp-beginners/thread855266.html
Скажите, почему в Microsoft Visual Studio 6 результатом программы double r1=1.12; double r2=1.13; int c; c=100*r2 - 100*r1; cout<<"100*r1="<<100*r1<<"\n"; cout<<"100*r2="<<100*r2<<"\n"; cout<<"c="<<c;
C++ нужно посчитать, сколько можно провести прямых, которые не будут параллельны другим прямым уже находящимся на коорд. плоскости. Вообщем нам даны N пар чисел X и Y, обозначающие координаты точек. Нам нужно посчитать, сколько можно провести прямых, которые не будут параллельны другим прямым уже находящимся на коорд. плоскости. Спасибо заранее! http://www.cyberforum.ru/cpp-beginners/thread855264.html
C++ Двумерные массивы. Найти максимальный среди элементов, повторившихся более одного раза
Дан массив A. Найти максимальный среди элементов, повторившихся более одного раза.
C++ Как запустить процесс с параметрами
Не могу запустить процесс с параметрами. system("D:\\Program Files\\GTASA\\samp.exe -c -h 228.1337.228.1337 -p 1337"); При такой попытке пишет: Программа работает..."D:\Program" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Как исправить, чтобы программа запустилась с параметрами? Спасибо =)
C++ Рекурентные последовательности http://www.cyberforum.ru/cpp-beginners/thread855225.html
Написал код, но с ошибками... Прошу помочь! Заранее спасибо! #include "stdafx.h" #include <math.h> #include <iostream> using namespace std; void main(){
C++ Алгоритм для работы с матрицей Помогите, пожалуйста, написать на языке С++ "алгоритм перестановки левой и правой половин квадратной матрицы(размер матрицы n является чётным числом". Заранее спасибо! подробнее

Показать сообщение отдельно
Ded_Vasilij
231 / 213 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
03.05.2013, 23:46  [ТС]     Удаление узла дерева
как Вы и сказали, в переопределении указателей - конкретно - в Delete нужно было указателю pDel изначально присвоить rt. Короче Delete теперь выглядит так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void Delete(TreeElem*& rt, const TElem &x)
    {
        if(!rt)
        {
            return;
        }
        if(x < rt->inf)
        {
            Delete(rt->Left,x);
        }
        else
            if(x > rt->inf)
            {
                Delete(rt->Right,x);
            }
            else
            {
                TreeElem*pDel = rt;
                if(!rt->Right)
                {
                    rt = rt->Left;
                }
                else
                    if(!rt->Left)
                    {
                        rt = rt->Right;
                    }
                    else
                        Del2(pDel,rt->Left);
                delete pDel;
            }
    }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru