Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Циклические операторы https://www.cyberforum.ru/ cpp-beginners/ thread120623.html
Нужна помощь. плз кому не трудно. Циклические операторы: 1) Вводится последовательность из N целых чисел. Найти наибольшее из всех отрицательных. 2) Вычислить...
Посчитать, сколько слов содержит текст произвольной длины. C++
Посчитать сколько слов, содержит текст поисзвольной длины. Разделителем между словами является символ пробела. Вывести на экран список всех встречающихся в тексте слов и их количество. Указание:...
Составит матрицу C++
Дано матрица а и b надо умножит их чтобы найти с матрицу
C++ с паскаля на Си++ uses crt; var a:array of integer; i,n,max,min:integer; c:char; begin ClrScr; repeat writeln('Выберите действие:'); {меню} writeln('1-ввод массива целых чисел'); https://www.cyberforum.ru/ cpp-beginners/ thread120607.html
C++ некорректный вывод результата https://www.cyberforum.ru/ cpp-beginners/ thread120601.html
Суть программы: Пользователь вводит число (например 4), программа печатаем квадрат со сторонами соответственно 4*4 в виде * (звездочек). Теперь проблема: квадрат то выводит, а вот в конце еще символ...
C++ Вывод текста на экран во время ожидания нажатия клавиши.
Языс C, компилятор Borland C++ 3.1 for DOS. Прошу помочь и ответить на мой вопрос. Я пишу игру, управление в игре стрелками на клавиатуре - я это реализвал через функцию getc() - и там уже узнаю...
C++ Сортировка структуры
Такая задача уже неоднократно была описана на вашем форуме но сортировки негде несмог найти: Написать функцию, которая читает данные о ноутбуках из файла note.txt (см. Задача 40) в структуру...
C++ Найти произведение всех целых чисел в диапазоне от А до Б включительно Помогите кто-нибудь пожалуйста я полный ноль в программировании... Нужно написать две простенькие програмки на С++. 1) Вводятся с клавиатуры координаты диагонали прямоугольника (типа "1 3 4 9").... https://www.cyberforum.ru/ cpp-beginners/ thread120590.html
C++ Консольное приложение начисления отпускных. https://www.cyberforum.ru/ cpp-beginners/ thread120567.html
Здравствуйте, пишу первый раз на данном форуме. Ищу помощь,в виде кода и коментариев к этой задачи. Программное обеспечение для начисления отпускных. Указание: При расчете суммы отпускных берутся...
C++ Связный список Посчитать сколько слов, содержит текст поисзвольной длины. Разделителем между словами является символ пробела. Вывести на экран список всех встречающихся в тексте слов и их количество. Указание:... https://www.cyberforum.ru/ cpp-beginners/ thread120559.html
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 14
0

Бинарное Дерево(обход дерева)

22.04.2010, 21:14. Просмотров 2445. Ответов 4
Метки (Все метки)

добрый вечер всем!)
в универе задали написать бинарное дерево со всеми видами обхода и т.п. я их написал..
но еще дали 1 вывод его надо написать рекурсией, я его никак не могу реализовать.
поясняю:
например дерево:
7
/ \
6 8
надо вывести его в таком виде, но еще это дерево должно лежать на левом боку(просто нарисовать так трудно, написал так):

7
/ \
6 8
/ \ / \
@ @ @ @
т.е есть там где NULL вывести "@";

struct tree_node{ int val; tree_node *left,*right;}; - элемент дерева.
вот что до чего я дошел, только без выводов @..а просто дерево лежащее на левом боку.
C++
1
2
3
4
5
6
7
8
void print(tree_node *root,int b){  
   if (root!=NULL)
  { print (root->right,b+1); 
    for (int i=1; i<=b; i++) cout<<"  "; 
    cout<<root->val<<endl; 
    print (root->left,b+1);
    }
}
если кто нибудь знает как это реализовать или поменяй мой print, пож-та скажите.
Заранее спасибо.

Вернуться к обсуждению:
Бинарное Дерево(обход дерева)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2010, 21:14
Готовые ответы и решения:

Бинарное дерево. Обход бинарного дерева (симметрический, прямой и обратный)
Привет всем! Мне надо в курсовой работе написать программу, которая строит бинарное дерево (по...

Бинарное дерево. Удалить из дерева часть вершин так, чтобы оставшееся дерево стало пирамидой
Дано бинарное дерево. Удалить из дерева часть вершин так, чтобы оставшееся дерево стало пирамидой.

Бинарное дерево в бинарном дереве: обход
Есть шаблонный класс бинарного дерева, описанный ниже. Все методы рабочие. template &lt;class T&gt;...

Бинарное дерево, расчёт суммы элементов дерева
Задание: Программа должна обрабатывать бинарное дерево, содержащее целые числа. Дополнительные...

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