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

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

Войти
Регистрация
Восстановить пароль
 
archi20
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 9
#1

Определение вершин в дереве - C++

25.11.2012, 16:01. Просмотров 262. Ответов 1
Метки нет (Все метки)

Всем привет, не очень получается понять деревья, не могу разобрать, как написать функцию для определения для каждой вершины числа вершин в правом поддереве?
Есть функция для определения глубины дерева.
Захожу в дерево, и может проверяю для правого глубину и вывожу, или как?

Вот глубина:
C++
1
2
3
4
5
6
7
8
9
10
11
12
int Tree::Height (Node **w)
{
  int h1,h2;
  if  (*w == NULL) return (-1);
  else
  {
    h1 = Height (&((**w).Left));
    h2 = Height (&((**w).Right));
    if  ( h1 > h2 ) return ( 1 + h1 );
    else  return ( 1 + h2 );
  }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2012, 16:01     Определение вершин в дереве
Посмотрите здесь:

Подсчет вершин в бинарном дереве - C++
Здравствуйте,помогите написать функцию ,которая подсчитывает число вершин на N-ом уровне бинарного дерева T(корень считать вершиной 0-го...

Обмен информации правых вершин одного бинарного дерева на информацию левых вершин другого - C++
Помогите пожалуйста с задачей Написать программу обмена информации правых вершин одного бинарного дерева на информацию левых вершин...

Расстояние в дереве - C++
Есть определенная реализация функциональной части, как дополнить ее до полной работоспособности в соответствии с заданием? Задание: ...

что неправильно в дереве? - C++
Вообщем нужно дерево сделать бинарное, в которое элементы добавляются и выводятся на экран..элементы типа int и вот написал так как давал...

Одинаковые элементы в дереве - C++
Хотел задать вопрос, если при добавлении повторяющегося элемента в список, представляемый в виде дерева, как его разместить правильно? У...

Поиск листьев в дереве - C++
Подскажите пожалуйста. Хочу изменить функцию вывода элементов дерева, так чтобы выводились те элементы которые не имееют детей. Не пойму...

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

Удалить белые вершины в дереве - C++
Помогите, пожалуйста. У меня такая задача: Дерево белых и черных вершин. Надо удалить белые вершины, находящиеся на последнем и...

NIL в красно-черном дереве - C++
В Кормене, алгоритм добавления содержит значение NIL, а в алгоритме удаление говорится о sentinal(NIL); class Node { Node *left; Node...

Поиск в красно-черном дереве - C++
Доброе утро! Изучая, Стандарт выполняю задание - создайте шаблон ассоциативного контейнера. В общем он будет предельно прост, лишь с...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
25.11.2012, 16:17     Определение вершин в дереве #2
C++
1
2
3
4
5
6
7
8
9
10
void iter(Node_t *tree, bool first = true)
{
    if (tree)
    {
         //  Обработка
         iter(tree->right, false)
         if (!first)
             iter(tree->left, false);
     }
}
Yandex
Объявления
25.11.2012, 16:17     Определение вершин в дереве
Ответ Создать тему
Опции темы

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