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

Бинарное дерево в типизированный файл - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ объясните запись http://www.cyberforum.ru/cpp-beginners/thread815028.html
Объясните пожалуйста вот эту запись char *str = "Hello, World!"; нужно ли потом освободить память, и в чем различие от char str = {"Hello, World!"};
C++ Вывести строку длины N, которая состоит из чередующихся символов Дано четное число N (> 0) и символы C1 и C2. Вывести строку длины N, которая состоит из чередующихся символов C1 и C2, начиная с C1. нужно выполнить задание в C++ #include <string> #include <iostream> using std::cin; using std::cout; using std::endl; using std::string; int main() http://www.cyberforum.ru/cpp-beginners/thread815025.html
C++ преобразование
Господа как преобразовать из LPTSTR в - LPCTSTR
C++ Последовательность
Каждое натуральное число можно представить в виде суммы нескольких строго последовательных натуральных чисел. Например, число 6 можно представить в виде суммы из одного (6) или трех (1+2+3) чисел. Требуется написать программу, которая определит максимальное количество чисел в таком разложении. В Delphi данную задачу решил так: procedure TForm1.Button1Click(Sender: TObject); var...
C++ Работа с деревьями (Найти все поддеревья, листья которых находятся в заданном диапазоне высот от корня поддерева) http://www.cyberforum.ru/cpp-beginners/thread815008.html
Есть задача: Дано N-дерево. Найти все поддеревья, листья которых находятся в заданном диапазоне высот от корня поддерева. Дайте советы по алгоритму решения, допустим прохожу дерево, нахожу лист, который в заданном диапозоне, как дальше вывести все поддеревья с этим листом, имея, например, сейчас только указатель на этот лист?Можно ли все это сделать за один обход дерева? Или как сократить...
C++ Программа на Си.Как корректно записать результат в текстовый файл Не получается красиво записать результат в текстовый файлик. Желательно записать в файл вот так : Summa elementov 1 stolbca = ? Summa elementov 2 stolbca = ? Summa elementov 3 stolbca = ? ну и так далее...в зависимости от количества столбцов. Пробовал через ofstream,вставляя в void OutResult().Ничего не получилось... ofstream out; out.open("rezultatmatrix.txt",ios::app); подробнее

Показать сообщение отдельно
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
22.03.2013, 20:34     Бинарное дерево в типизированный файл
zepterman, насколько я помню, изменить данные нельзя, так как это приведет к неправильному результату, можно получить данные, удалить узел, и перезаписать с новыми значениями. В бинарном дерево итак все сортируется. Хотя, смотря что изменять, конкретнее можно?)

Добавлено через 8 минут
zepterman, вот так не будет зацикливания

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Tree::inputting()
{
    Elem  *zx;
    zx = new Elem;
    cout<<"\n-----------------\n";
    cout <<"\nName: "; cin>>zx->Name;
    cout<<"\nPercentage: ";cin>>zx->percentage;
    cout<<"\nPeriod: ";cin>>zx->period;
    cout<<"\nSumma: ";cin>>zx->summa;
    zx -> left = NULL;
    zx ->right = NULL;
    Insert(zx);
}
но, все же, я советую удалять, а потом перезаписывать

Добавлено через 41 минуту
zepterman, напортачил что-то я, у тебя тут неправильно условие добавления... нужно что-то вроде этого сделать

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void Tree::Insert(Elem *Ptr, Elem  *z)
{
    if(Ptr == NULL)
    {
        Ptr = new Elem;
        Ptr = z;
        Ptr -> left = Ptr -> right = NULL;
    }
    else
    {
        if(strcmp(z ->Name, Ptr ->Name) < 0)
            Insert(Ptr -> left, z);
        else if(strcmp(z ->Name, Ptr ->Name) > 0)
            Insert(Ptr -> right, z);
    }
 
    cout<<"\n\n-------INSERT EL. START----------\n";
    cout <<"\nName: "<<z->Name;
    cout<<"\nPercentage: "<<z->percentage;
    cout<<"\nPeriod: "<<z->period;
    cout<<"\nSumma: "<<z->summa;
    cout<<"\n-------INSERT EL. END----------\n";
}
 
Текущее время: 15:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru