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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
ALEK3S
0 / 0 / 0
Регистрация: 15.12.2008
Сообщений: 12
#1

Бинарное дерево - C++

15.12.2008, 16:29. Просмотров 1201. Ответов 1
Метки нет (Все метки)

пытаюсь самостоятельно разобраться с этим, но чето не выходит
вот мой листинг.
вроде кудато чтото вводит, но ничего не выводит. помогите исправить


Код
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<string.h>
#define N 40
class tree
{
  struct node
  {
    int a;
    char *inf[40];
    node *l,*r;
  };
  node *dr;
  public:

         void menu(void);
         tree(){dr=NULL;}
         int see(node *);
         int sozd(int,node *);
         node *root(){return dr;}
};
main()
{
  tree t;
  int m,a;

  do
    {  clrscr();
       t.menu();
       m=getch()-'0';
       switch(m)
       {
         case 1: clrscr();
                 cout<<"\n dobavlenie uzla\n"<<endl;
                 cout<<"\n vvedite chislo\n->";
                 cin>>a;
                 t.sozd(a,t.root()); break;

         case 2: clrscr();
                 cout<<"vyivod dereva"<<endl;
                 t.see(t.root()); break;

         case 0: break;
       }
    }while(m);

}
int tree::sozd(int a,node *p)

{
  int c;
      if(!p)
           {
            if((p=new node)==NULL)
               { cout<<"\n net mesta\n"<<endl;
                  return 0;
               }

            p->a=a;
            p->l=p->r=NULL;
            cout<<p->a<<endl;
           }
      else
          {
           c=(p->a)-a;
            if(c<0)
                  sozd(a,p->l);
             else
                 sozd(a,p->r);

      }

}
int tree::see(node *p)
{ if(p->l)
     see(p->l);
  cout<<p->a<<endl;
  if(p->r)
     see(p->r);

}

void tree::menu(void)
{
  clrscr();
  cout<<"1-vvod nov usla"<<endl;
  cout<<"2-prosmotr dereva"<<endl;
  cout<<"0-vyihod"<<endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2008, 16:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Бинарное дерево (C++):

Исходное бинарное дерево превратить в бинарное дерево поиска, при этом сохранив его структуру - C++
Помогите, не могу понять!( Нужно исходное бинарное дерево превратить в бинарное дерево поиска, при этом сохранив его структуру. вот...

Бинарное дерево. Удалить из дерева часть вершин так, чтобы оставшееся дерево стало пирамидой - C++
Дано бинарное дерево. Удалить из дерева часть вершин так, чтобы оставшееся дерево стало пирамидой.

Бинарное дерево - C++
Помогите, пожалуйста. Осталась последняя задача в контрольной. Не знаю даже, как к ней подступиться. К проекту ПРИМЕР Btree ...

Бинарное дерево - C++
дано целочисленнное бинарное дерево. найти: а)количество вершин дереваж б)значение самой левой вершины в правом поддереве в)...

Бинарное дерево - C++
Народ помогите. На С++ нада написать программу бинарного дерева Требования: 1. В программе должен быть шаблонный класс (template...

Бинарное дерево - C++
Как организовать вывод бинарного дерева?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Вертолётчик
1 / 1 / 0
Регистрация: 01.12.2008
Сообщений: 113
17.12.2008, 10:07 #2
What do you want as the result of your activity
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2008, 10:07
Привет! Вот еще темы с ответами:

Бинарное дерево - C++
Помогите пожалуйста с программой. Нужно сделать обход, слева и справа(функции get_left и get_right), желательно обход в глубину. И...

Бинарное дерево - C++
Здравствуйте.Прошу помощи.Никак не могу разобраться в задании.Нужно сделать бинарное дерево и с помощью дерева привести выражение к...

Бинарное дерево - C++
Мой код: Patient.h // // Created by User on 26.04.2016. // #ifndef LABA_10_PATIENT_H #define LABA_10_PATIENT_H using...

Дерево бинарное - C++
Интересует вопрос, при добавлении нового элемента куда я его должен буду помещать, на какую ветку. Допустим есть дерево с корнем 5 и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru