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

Произвольное дерево - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
jhendrix
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 184
29.08.2010, 02:00     Произвольное дерево #1
здравствуйте.
какие есть хорошие статьи по теме: произвольное дерево ?
и чем отличается реализация произвольного от бинарного дерева ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vladimir.
155 / 155 / 10
Регистрация: 24.11.2009
Сообщений: 375
30.08.2010, 00:44     Произвольное дерево #2
Цитата Сообщение от jhendrix Посмотреть сообщение
здравствуйте.
какие есть хорошие статьи по теме: произвольное дерево ?
и чем отличается реализация произвольного от бинарного дерева ?
И Вам доброго времени суток,
сразу ко второму вопросу.
Под произвольным деревом, имеется ввиду дерево общего вида (то есть у вершины неограниченное число потомков)???
Допустим, для организации обычного бинарного дерева мы использовали следующую конструкцию:
C++
1
2
3
4
5
6
struct nodes
{
    SOME TYPE data;
    nodes *left;
    nodes *right;
};
тогда, в простейшем случае, мы имели некий указатель на корень дерева. Указатели left и right хранили адреса левого и правого потомка соответсвенно. Каждый потомок хранил указатели на своих потомков (либо потомка и NULL), и так далее пока оба указателя не принимают значение NULL (листовая вершина или лист).

Для организации произвольного дерева опять же будет некий указатель на корень. Указатель left хранит адрес левого потомка, а вот указатель right хранит адрес правой сестры. У корня, естественно, сестры нет, но у потомка корня может быть. Нетрудно увидеть, что вобще говоря потомки одного родителя организуются в однонаправленный связный список.
jhendrix
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 184
30.08.2010, 08:25  [ТС]     Произвольное дерево #3
хорошо, но у меня только один вопрос.
допустим произвольное дерево вот такое:

A
/ \
B C
/ \ \
D E F

тогда в этом примере узел F пропадает согласно определению ?
Vladimir.
155 / 155 / 10
Регистрация: 24.11.2009
Сообщений: 375
30.08.2010, 13:59     Произвольное дерево #4
Цитата Сообщение от jhendrix Посмотреть сообщение
хорошо, но у меня только один вопрос.
допустим произвольное дерево вот такое:

A
/ \
B C
/ \ \
D E F

тогда в этом примере узел F пропадает согласно определению ?
C++
1
2
3
4
5
6
7
                A -- NULL
              /
             B---------------------------------C ------- NULL
           /                                  /
          D---E--NULL                       F----NULL
        /     /                            /
      NULL   NULL                         NULL
не происходит деления на левого/правого потомка, есть просто потомок (ну или первый потомок, второй потомок, третий потомок и т.д.)
jhendrix
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 184
30.08.2010, 14:58  [ТС]     Произвольное дерево #5
Ок. Понял.
Yandex
Объявления
30.08.2010, 14:58     Произвольное дерево
Ответ Создать тему
Опции темы

Текущее время: 13:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru