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

Описать класс, реализующий бинарное дерево - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ программы в С++ http://www.cyberforum.ru/cpp-beginners/thread711900.html
подскажите что делать- есть код программы, но не знаю как её открыть что бы получить результат... #include "stdafx.h" #include "stdafx.h" #include <iostream> #include <process.h> #include <string.h> using namespace std; int main (int argc, char*argv) { char xc= "xcopy /e ";
C++ Напечатать таблицу значений функций sinx и tgx на отрезке [0, 3] с шагом 0.1 Я на 1 курсе, информатики в шк не было, в универе половины лекций не было, практики ни одной не было. Поэтому в информатике, тем более в программировании я не ас. И тут нам учитель даёт задание(писать на с++): Напечатать таблицу значений функций sinx и tgx на отрезке с шагом 0.1. Значения х печатать с одной цифрой в дробной части, значения синуса - с пятью, а значения тангенса - в... http://www.cyberforum.ru/cpp-beginners/thread711874.html
C++ программа, которая бы вычисляла среднее значение, максимальный и минимальный элемент второй колонки Excel и выводила это значение на экран
Тема: «Чтение и обработка табличных данных с использованием языка C++» Цель: Научиться сохранять таблицы с помощью MS Excel в формате CSV (Comma- Separated Values). Научиться открывать, читать и проводить обработку данных полученных в формате CSV с помощью языка программирования C++. 1. FILE – структура, объявляющая файл и хранящая дескриптор на данный файл; 2. fopen(.) – функция для...
Шаблонная функция и перегрузка C++
ребят помогите создать шаблонную функцию тут : #include "stdafx.h" #include "iostream" #include "conio.h" #include "iomanip" #include "ctime" using namespace std; int Sum (int** arr, int N, int i) { int sum = 0;
C++ Заполнить матрицу числами из файла http://www.cyberforum.ru/cpp-beginners/thread711844.html
Ребята, обясните доходчиво как работает етот кусок кода const int size = mas; int** m = new int*; for (int i=0; i<size; i++) m = new int; for (int i=0; i<size; i++) for (int j=0; j<size; j++) m = 0; for (int i=0; i<count; i++) m = mas; for (int i=0; i<size; i++){
C++ Прочитать блок из файла Пишу в BUILDER C++. Не знаю, где завяз. Требуется прочитать файл: FILE *infile; infile=fopen(Srce.c_str(),"rb"); // считываем размер подписанных данных DWORD size=0; fread(&size,sizeof(DWORD),1,infile); // считываем сами данные PBYTE date; подробнее

Показать сообщение отдельно
olenya21
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 13
28.11.2012, 13:00     Описать класс, реализующий бинарное дерево
помогите ..ребят знаю что обсуждалось уже кучу раз..но у мне выдаёт ошибки..разобраться не могу..эту роботу должна сдать очень скоро..((

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

вот текст который я нашла ..но не работает..и если не сложно объясните где в программе начинается словарь..ума не приложу!!ну вот как-то так..помогите пожалуйста!!

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
83
84
85
86
87
88
89
90
91
92
93
94
95
struct  node
{
   int Key;
  int Count;
  node *Left;
  node *Right;}
class TREE
{  private:
    node *Tree; //Указатель на корень дерева.
    void Search (int,node**);
  public:
    TREE() {Tree=NULL;}
    node** GetTree () {return &Tree;} //Получение вершины дерева.
    void BuildTree ();
    void CleanTree (node **);
    void ObhodEnd (node **);
    void ObhodLeft (node **);
    void ObhodBack (node **);
    void Vyvod (node**,int);
    int Height (node**);};
void main ()
{  TREE A;
  A.BuildTree ();
  cout<<"\nVyvod Dereva:\n";
  A.Vyvod (A.GetTree(),0);
  cout<<"\nВысота дерева:"<<A.Height(A.GetTree())<<endl;
  cout<<"\nЛевосторонний обход дерева: ";
  A.ObhodLeft (A.GetTree());
  cout<<"\nКонцевой обход дерева: "; A.ObhodEnd (A.GetTree());
  cout<<"\nОбратный обход дерева: "; A.ObhodBack (A.GetTree());
  A.CleanTree (A.GetTree());}
void TREE::BuildTree ()
{  int el;
  cout<<"Vvedite slovo ...\n";
  cin>>el;
    while  (el!=0)
  { Search (el,&Tree); cin>>el; }}
void TREE::Search (int x,node **p)
{  if  (*p==NULL)
  {    *p = new(node);
    (**p).Key = x;     (**p).Count = 1;
    (**p).Left = NULL; (**p).Right = NULL; }
  else
    if  (x<(**p).Key) Search (x,&((**p).Left));
    else
      if  (x>(**p).Key) Search (x,&((**p).Right));
      else  (**p).Count = (**p).Count + 1;}
void TREE::ObhodLeft (node **w)
{  if  (*w!=NULL)
  {    cout<<(**w).Key<<" ";
    ObhodLeft (&((**w).Left));
    ObhodLeft (&((**w).Right));}}
void TREE::ObhodEnd (node **w)
//Концевой обход дерева.
//*w - указатель на корень дерева.
{  if  (*w!=NULL)
  { ObhodEnd (&((**w).Left));
    ObhodEnd (&((**w).Right));
    cout<<(**w).Key<<" "; }}
void TREE::ObhodBack (node **w)
//Обратный обход дерева.
//*w - указатель на корень дерева.
{  if  (*w!=NULL)
  { ObhodBack (&((**w).Left));
    cout<<(**w).Key<<" ";
    ObhodBack (&((**w).Right)); }}
void TREE::CleanTree (node **w)
//Очистка дерева.
//*w - указатель на корень дерева.
{  if  (*w!=NULL)
  { CleanTree (&((**w).Left));
    CleanTree (&((**w).Right));
    delete *w; }}
void TREE::Vyvod (node **w,int l)
//Изображение дерева *w на экране дисплея
//          (рекурсивный алгоритм).
//*w - указатель на корень дерева.
{  int i;
  if  (*w!=NULL)
  { Vyvod (&((**w).Right),l+1);
    for  (i=1; i<=l; i++) cout<<"   ";
    cout<<(**w).Key<<endl;
    Vyvod (&((**w).Left),l+1); }}
int TREE::Height (node **w)
//Определение высоты бинарного дерева.
//*w - указатель на корень дерева.
{  int h1,h2;
  if  (*w==NULL) return (-1);
  else
  {    h1 = Height (&((**w).Left));
    h2 = Height (&((**w).Right));
    if  (h1>h2) return (1 + h1);
    else  return (1 + h2);
   }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru