| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Небинарное дерево |
| Автор: Hanja 9.11.2014, 19:36 | ||
| Имеется такая задача: Трассировка программы, не содержащей рекурсивных вызовов и повторяющихся имен процедур, распечатана в виде списка выполняемых процедур. Процедура попадает в список, если к ней произошло обращение из вызывающей процедуры либо возврат управления из вызванной ей процедуры. Структура программы такова, что каждая вызываемая процедура вложена в вызывающую ее процедуру. Начало и окончание программы должны быть в головной процедуре. Известен объем памяти, который требуется для загрузки каждой процедуры. При выходе из процедуры занимаемая ей память освобождается. Построить и выдать дерево вызовов процедур. Определить размер памяти, необходимый для работы программы, и цепочку вызовов, требующую максимальной памяти. На данный момент у меня готова программа, которая создает и выводит небинарное дерево. Мне нужна помощь с переделкой этой программы для решения моей задачи.
|
| Автор: xvr 10.11.2014, 12:52 |
| Ваша программа - готовый пример на тему 'Как не надо писать на С++'. Верните каку тому, кто ее написал Вам нужно динамически создаваемое дерево, в котором узлы заранее не знают о количестве своих потомков, и набирают их по мере чтения файла с трассировкой. Для хранения потомков используйте массив std::vector<Tree*> внутри Tree |