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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Это массив? http://www.cyberforum.ru/cpp-beginners/thread191436.html
static int attrListSgl = {GLX_RGBA, GLX_RED_SIZE, 4, GLX_GREEN_SIZE, 4, GLX_BLUE_SIZE, 4, GLX_DEPTH_SIZE, 16, None}; Это массив?
C++ Что это структура? #include<stdio.h> #include<stdlib.h> #include<X11/X.h> #include<X11/Xlib.h> #include<GL/gl.h> #include<GL/glx.h> #include<GL/glu.h> Display *dpy; Window root; http://www.cyberforum.ru/cpp-beginners/thread191425.html
delete или new (typeid(void*))(void*) C++
Доброе время суток. Пишу список. Телом каждого элемента (el) списка является void указатель(body). (предполагается что тело элемента может быть любого типа, т.е. переменные, классы, другой такой же список и т.д.) Критерий - универсальность и скорость. У меня получилось что-то типа (*el).body = new typeid(NewType); где NewType - параметр функции, void * на какую либо известную переменную...
отсортировать текст C++
Помогите плиз... Отсортировать текст по длине слов в порядке возрастания. В тексте несколько строк. Исходный текст должен содержаться в одном файле, результат — во втором файле. решение нужно в си.
C++ Поиск заданной буквы в строке. Определения количества слов http://www.cyberforum.ru/cpp-beginners/thread191341.html
В заданной строке определить количество слов, в которых заданная буква встречается больше одного раза. Язык С. Помогите пожалуйста!
C++ как прервать работу функции??? dot CrossLine (const line &L, const line &P, dot&D) { double z; z=Determin(L.A,L.B,P.A,P.B); if (fabs(z)<1e-12) { char S="Прямые не пересекаются"; CharToOem(S,S); cout<<S<<"\n"; } подробнее

Показать сообщение отдельно
genius5
 Аватар для genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
15.11.2010, 12:15     Удаление узла бинарного дерева
всем привет.вот есть у меня бинарное дерево тока фун-ии добавления и обхода.очень нужно удалени помогите плиз.
.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
#include "TreeNode.h"
 
int main(void)
{
TreeNode ob(3); 
ob.AddElement(5);
ob.AddElement(6);
ob.AddElement(4);
ob.AddElement(8);
cout << "Up down method\n";
ob.ShowUpDown();
return 0;
}
.h
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
33
34
35
36
37
38
39
#include <iostream>
using namespace std;
class TreeNode{
    int value;
    TreeNode *left, *right;
    TreeNode *CreateTreeNode();
    TreeNode *CreateTreeNodeEx() {return new TreeNode;}
  public:
    TreeNode(){left=right=NULL; value = 0;} 
    TreeNode(int x){left=right=NULL; value = x;}
    ~TreeNode(){left=right=NULL; value = 0;}
    TreeNode *GetRightNode()
    {return right;} 
    TreeNode *GetLeftNode()
    {return left;}
    int AddElement(int x)
    {if(x < value){
            if(left){left->AddElement(x);}
            else {if (!(left = CreateTreeNode()))       return  -1;
                else    left->SetValue(x);}
        } else {
            if(right){right->AddElement(x);}
            else {if (!(right = CreateTreeNode()))      return  -1;
                else    right->SetValue(x);}}return 0;
    }
 
    int GetValue(){return value;}
    void SetValue(int &x){value = x;}
    void ShowUpDown();
    };
TreeNode* TreeNode::CreateTreeNode()
{return new TreeNode;}
 
void TreeNode::ShowUpDown()
{
cout << GetValue() << " ";
if (left)   left->ShowUpDown();
if (right)  right->ShowUpDown();
}
Добавлено через 1 час 55 минут
ауууу кто нибудь
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru