Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 19.05.2013, 10:55   #1
Sv.
Пользователь
 
Регистрация: 01.11.2012
Сообщений: 48
По умолчанию вывод бинарного дерева

не могу понять почему выводит только b[0]

Код:
#include <vcl.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop

//---------------------------------------------------------------------------

struct Node
{int d;
Node *left;
Node *right;
};
Node *first(int d);
Node *search_insert(Node *root, int d);
void print_tree(Node *root, int l);

#pragma argsused
int main(int argc, char* argv[])
{
int b[]={10,25,20,6,21,8,1,30};
Node *root=first(b[0]);
for(int i=0;i<7;i++)
search_insert(root,b[i]);
print_tree(root,0);
getch();
        return 0;

}
//---------------------------------------------------------------------------
Node *first(int d)
{Node *pv=new Node;
pv->d=d;
pv->left=0;
pv->right=0;
return pv;
}

Node *search_insert(Node *root, int d)
{Node *pv=root, *prev;
int found=0;
while(pv&&!found){
prev=pv;
if(d==pv->d) found=1;
else
if(d<pv->d) pv=pv->left;
else pv=pv->right;}
if(found) return pv;
Node *pnew=new Node;
pnew->d=d;
pnew->left=0;
pnew->right=0;
if(d<prev->d)
prev->left=pv;
else
prev->right=pv;
return pnew;
}

void print_tree(Node *root, int l)
{if(root) {
print_tree(root->left,l+1);
for(int i=0;i<l;i++) cout<<"****";
cout<<root->d<<endl;
print_tree(root->right,l+1);
}}
Sv. вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод бинарного дерева. C++ vadmaruschak Помощь студентам 0 11.12.2012 12:07
вывод бинарного дерева на экран. Лунатик13 Помощь студентам 1 10.06.2012 01:16
преобразование бинарного дерева Lerris Общие вопросы C/C++ 0 09.03.2012 20:12
c++ ввод и вывод бинарного дерева в файл lblondy Помощь студентам 0 02.03.2012 00:34
вывод на экран бинарного дерева поиска CodeNOT Общие вопросы C/C++ 0 16.02.2011 23:22


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS