| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++] Деревья |
| Автор: ditya666 9.4.2007, 21:59 | ||
Каждую вершину с четным номером поменять местами с сыном, имеющим четный номер.
Вот код, но нужно еще добавить загрузку и сохранение в файл и отображение самого графа. |
| Автор: Ryoga 11.4.2007, 21:44 |
| И в чём вопрос? Код то работает? |
| Автор: ditya666 11.4.2007, 21:51 |
| Да, код работает, но я же написала, что нужно к этому коду еще добавить! |
| Автор: Ryoga 12.4.2007, 13:06 |
| Так добавьте... ;) Я так понимаю, деревья бинарные? Тогда можно хранить в файле следующим образом - по уровням. 1 2 3 4 5 6 7 и т.д. Это - значения хранящиеся в узлах дерева... Соответственно, так и пишем в файл - последовательно 1,2,3,4,5,6,7 и т.д. Загружая из файла мы знаем, что на первом уровне у нас - одно значение, на втором два и т.д. Соответственно, считываем эти значения и распределяем по ветвям. По выводу не знаю, что Вам посоветовать... определяйте, сколько у вас уровней в дереве, сколько занимает одна запись в узле, а потом выводите с соответствующим отступом... это - самое простое, что можно предложить... |
| Автор: ditya666 12.4.2007, 16:44 |
| Помогите мне это в код вписать! я не умею!!! |
| Автор: GIK 14.4.2007, 11:50 |
| Задачу почти решил, можно заносить данные в файл в функции Change() используя level и count 1 Курсор записи находится на уровне 2^ (node->level-1)+count / \ / \ / \ 2 3 2^ (node->level-1)+count / \ / \ / \ / \ / \ / \ 4 5 6 7 2^ (node->level-1) +count Единственное не могу придумать алгоритм который будет правильно определять индекс, ветви разные, где-то ветвь есть гдето ее нет. Подумаю еще, задача интересна от своей сложности ЗЫ: ditya666, из какого курса задача? и почему такое страшный ник, темболее у девушки |
| Автор: ditya666 17.4.2007, 17:59 |
| GIK, ну по поводу ника... не знаю у меня почта такая же |
| Автор: MakaBuka 29.5.2007, 18:40 |
| О! у меня похожее задание....токомо у меня работа Б-деревьми... |