Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Шпоры по МПиПА / Деревья / Модуль с работы с деревьями / C / Исходник / bin_tree
.cpp#include "stdio.h"
#include "stdlib.h"
//---------
typedef struct tr{
int val;
tr *l, *r;
} tree, *ptree;
//---------
ptree root; //root
//---------
ptree create(ptree root, ptree p, int value){
if(!p){
p = new tree;
p->l = 0;
p->r = 0;
p->val = value;
if(!root) return p;
if(value<root->val) root->l = p;
else root->r = p;
return p;
}
if(value < p->val) create(p, p->l, value);
else create(p, p->r, value);
return root;
}
//----------
void print(int deep, ptree p){
if(p){
print(deep + 1, p->l);
for ( int i = 0; i < deep; i ++ ){
printf(" " );
}
printf(">%d",p->val);
printf("\n");
print(deep + 1, p->r);
}
}
//-----------
void main(){
int length = 15;
int* mas;
mas = new int[length];
for (int i = 0 ; i < length; i ++ )
mas[i]=rand();
mas[0] = 20000;
for(i=0;i<length;i++) root = create(root, root, mas[i]);
print(0, root);
}