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

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

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

Показать сообщение отдельно
lolers
0 / 0 / 0
Регистрация: 16.04.2010
Сообщений: 14

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

22.04.2010, 21:14. Просмотров 1808. Ответов 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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru