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

многомерное дерево - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как закрасить круг (circle) http://www.cyberforum.ru/cpp-beginners/thread569759.html
Как закрасить круг в любой цвет, не могу найти таких ф-ций, setfillstyle не подходит
C++ Возникли трудности с функцией быстрой сортировки qsort Добрый вечер. Есть массив прямоугольников со своей высотой и шириной, надо отсортировать отдельно по высоте, ширине и площади прямоугольника. Так вот, основное есть, а вот с сортировкой заминка вышла. Вроде всё как надо написал, но в итоге выводит бред. Подскажите, где я напорол косяков. Может в самой функции сравнения или в описании функции qsort? const int n = 10; struct rectangle { ... http://www.cyberforum.ru/cpp-beginners/thread569753.html
Основы ветвления C++
Встретился на сайте с такой подачей ветвления: if ( !qwe ) Что значит восклицательный знак, неравенство?
C++ Сортировка букв.
Отсортировать буквы в строке в порядке возрастания с учетом регистра. Помогите написать код под компилятор Borland c++,заранее спасибо!!!
C++ рандом со значение меньше нуля http://www.cyberforum.ru/cpp-beginners/thread569722.html
for (int i = 0; i < 50; i++){ A=rand()%100; } как сделать чтобы рандомные числа были не только положительные ну и отрицательные)
C++ Как переставить в обратном порядке элементы массива, расположенные между его минимальным и максимальным элементами Подскажите как реализовать перестановку элементов массива в заданом промежутке? Минимум и максимум массива я нашел, а как переставить элементы не знаю... Подкиньте идею. подробнее

Показать сообщение отдельно
Avazart
 Аватар для Avazart
6901 / 5141 / 252
Регистрация: 10.12.2010
Сообщений: 22,604
Записей в блоге: 17
10.05.2012, 00:39     многомерное дерево
Вы имеете виду чтоб добовлять к нод1 можно было добавлять нод3 минуя обращение к нод2?

Добавлено через 8 минут
так как в таком виде хранить легче.
И в чем заключается легкость?

Добавлено через 2 минуты
Набросал пока вот это
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
struct Node
{
Node* parent;// Если надо
Node* child;
Node* sibling;
 
  int number;
 
  Node(int number=0,Node* parent=NULL);
  ~Node();
 
  void set_child(Node* child);
  void set_sibling(Node*);
 
  void create_child(int number);
  void create_sibling(int number);
 
  void print();
};
//------------------------------------
Node::Node(int number,Node* parent)
{
cout<<"create node "<<number<<endl;
this->number= number;
this->parent= parent;
sibling=child=NULL;
}
//------------------------------------
Node::~Node()
{
cout<<"destroy node "<<number<<endl;
if(sibling!=NULL) delete sibling;
if(child!=NULL) delete child;
}
//------------------------------------
void Node::set_child(Node* child)
{
if(child!=NULL) delete this->child;
this->child=child;
}
//------------------------------------
void Node::set_sibling(Node* sibling)
{
if(sibling!=NULL) delete this->sibling;
this->sibling=sibling;
}
//------------------------------------
void Node::create_child(int number)
{
set_child(new Node(number,this));
}
//------------------------------------
void Node::create_sibling(int number)
{
set_sibling(new Node(number,this));
}
//------------------------------------
void Node::print()
{
cout<<number;
if(sibling)cout<<"\t"<<sibling->number;
cout<<endl;
if(child)cout<<child->number<<endl;
}
//---------------------------------------------------------------------------
int _tmain(int argc, _TCHAR* argv[])
{
system("chcp 1251");
 
Node* n1=new Node(1);
 
n1->create_child(2);
n1->child->create_sibling(3);
n1->child->sibling->create_sibling(4);
n1->child->create_child(5);
n1->child->print();
 
delete n1;
system("pause");
return 0;
}
//---------------------------------------------------------------------------
Над выводом конечно надо подумать

Но просто не понимаю конечную цель...
 
Текущее время: 11:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru