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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.91
viktor.mart
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 4
#1

Запись бинарного дерева в файл и восстановление из него этого дерева - C++

06.12.2010, 16:21. Просмотров 4888. Ответов 9
Метки нет (Все метки)

Задача такая: есть бинарное дерево. Каждый элемент дерева содержит 3 указателя - 1 указатель на структуру с данными, 2 и 3й указатель на потомков этого элемента - левый и правый. Построение дерева и перебор его элементов осуществлен с помощью рекурсивного метода.
Как можно реализовать запись этого дерева в файл, что бы его потом можно было из него восстановить.
Тем пересмотрел достаточно, люди объясняли что то, но не смог реализовать не один из вариантов. Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2010, 16:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись бинарного дерева в файл и восстановление из него этого дерева (C++):

Написать шаблон бинарного дерева с функцией распечатки дерева - C++
Не понимаю, что от меня хотят. Дано такое задание: Написать шаблон бинарного дерева с функцией распечатки дерева *(+(d,e),c) в виде...

Запись бинарного дерева - C++
Всем привет! Нужно записать следующий массив (вверху картинки) в бинарное дерево, которое имеет структуру, которая на картинке во...

Запись бинарного дерева в массив - C++
Как можно записать элементы бинарного дерева в массив? Пробовал одну очень странную идею: void run(Tree *root){ if(root){ ...

Запись и считывания бинарного дерева с текстового документа - C++
Подскажите как записать и считать бинарное дерево с текстового документа! Вот рабочая программа, кому надо смотрите пользуйтесь:...

Дозапись бинарного дерева в файл - C++
Можете сказать алгоритм дозаписи бинарного дерева в файл и если не сложно скинуть пример. У меня когда дозаписываю дерево в файл, то...

Запись массива в виде бинарного дерева и вывод его на экран! - C++
Задача: Зарандомить массив с 30 ел... от -100 до 100, создать бинарное дерево использую дан. массив, Вывод массива и дерева на экран.. ...

9
viktor.mart
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 4
09.12.2010, 18:35  [ТС] #2
Мда, вот те и мега программисты. Не могут помочь даже с таким заданием, вы что только массивы знаете как перебирать?!

 Комментарий модератора 
Вам здесь никто ничем не обязан! Не помогают - значит не хотят. Выводы по поводу способностей участников форума оставьте при себе.
0
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
09.12.2010, 18:49 #3
А кто тебе обязан помогать? Обязательно помогают только за деньги, а на форуме все по желанию.
0
Напильнег
480 / 118 / 10
Регистрация: 30.09.2010
Сообщений: 473
09.12.2010, 20:41 #4
Цитата Сообщение от viktor.mart Посмотреть сообщение
Не могут помочь даже с таким заданием,
Дык тебе не помочь, тебе вроде реализация нужна...
0
Vladimir.
155 / 155 / 10
Регистрация: 24.11.2009
Сообщений: 375
09.12.2010, 23:16 #5
Не могут помочь даже с таким заданием, вы что только массивы знаете как перебирать?!
а Вы знаете как массивы перебирать?

Как можно реализовать запись этого дерева в файл, что бы его потом можно было из него восстановить.
У вас трудности с сохранением дерева или с сохранением структуры?? то есть после восстановления вам нужно иметь дерево идентичное сохраненному или новое дерево с сохранёнными данными? Или вы не знаете как сохранять структуру на которую указывает первый указатель??
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
10.12.2010, 00:49 #6
Цитата Сообщение от viktor.mart
Как можно реализовать запись этого дерева в файл
можно построить дерево уникальных чисел, которое имеет такой же вид
а потом записать в файл пары "число - данные"
при восстановлении дерево строится по числам, но в узлы сохраняются только данные
0
Напильнег
480 / 118 / 10
Регистрация: 30.09.2010
Сообщений: 473
10.12.2010, 10:57 #7


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

Т.е. это просто задача на тупо построение и рекурсивный обход дерева, без всяких сусликов, а ТС тупо не может собрать программу из имеющихся в интернет реализаций этих стандартных операций работы с двоичными деревьями
0
viktor.mart
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 4
10.12.2010, 19:38  [ТС] #8
Вот что за люди, пока не написал, то что некоторых может зацепило никто даже не ответил. Спасибо за помощь кто, хоть какие то мысли по этому поводу написал
0
Напильнег
480 / 118 / 10
Регистрация: 30.09.2010
Сообщений: 473
10.12.2010, 19:58 #9
Цитата Сообщение от viktor.mart Посмотреть сообщение
Тем пересмотрел достаточно, люди объясняли что то
Ну, и на каких же ты форумах спрашивал про твою беду, что тебе на такой простой вопрос на идеологическом уровне не ответили? Огласите весь список! (C)

А на не идеологическом... Реализацию для дерева писать дело громоздкое и неинтересное, если только у кого за голенищем болтается именно то, что тебе нужно...
0
viktor.mart
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 4
11.12.2010, 23:37  [ТС] #10
Я понимаю, что не благодарное. Но сделать надо. Сегодня нет ни сил, ни желания. Завтра буду разбираться. Если разберу, напишу реализацию обязательно.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2010, 23:37
Привет! Вот еще темы с ответами:

Вывод бинарного дерева на экран в виде "дерева" - C++
основная задача: подсчет количества листьев. проблема: при просмотре хочу выводить бин. дерево, в красивом виде, возможно использование...

Запись дерева в файл - C++
Помогите организовать запись дерева в файл. текст: #include <stdio.h> #include <stdlib.h> #include <iostream> #include...

Запись дерева в файл - C++
Когда я записываю дерево в файл и следом же считываю его, то проблем нет все работает отлично. Но если убрать запись и попробовать считать...

Построение бинарного дерева на основе не бинарного - C++
В лабораторной работе есть такое задание: Создайте процедуру построения бинарного дерева на основе не бинарного. Объясните как вообще...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
11.12.2010, 23:37
Ответ Создать тему
Опции темы

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