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

НЕрекурсивный обход бинарного дерева - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нужна справка для новичка http://www.cyberforum.ru/cpp-beginners/thread52322.html
Люди, help pls... 1. Каким образом представляются символьные данные? 2. Чему равен результат выражения (int y): int x = y = 3.5; 3. Найдите ошибки в операторах ввода/вывода (ответ пояснить): a) cout << 0xDED;
C++ классы Определить класс «МЕБЕЛЬ». Компонентные данные класса: вид мебели – char*, изготовитель – char*, стоимость – float Методы класса: 1) функция для ввода с клавиатуры значений компонентных данных объекта класса; 2) функция для вывода на экран значений компонентных данных объекта класса. В основной программе объявит объект, массив объектов и указатель на объект данного класса (указатель... http://www.cyberforum.ru/cpp-beginners/thread52315.html
C++ Как получить доступ к указателю __vfptr
Имеется класс в котором все функции определены, как виртуальные, следовательно для них создается таблица виртуальных методов vtbl(virtual method table), необходимо получить доступ к его методам, зная его адреса. Однако когда я пытаюсь использовать, поле __vfptr класса содержащего хотя бы один виртуальный метод, но компилятор говорит что такого поля нет, хотя при отладке это поле прекрасно видно....
Вычислить значение выражения. C++
Люди помогите с выражением x=2sin^2(3PI-2a)cos^2(5PI+2a) a-это альфа
C++ Где найти необходимые шпаргалки? http://www.cyberforum.ru/cpp-beginners/thread52288.html
Добавлено через 13 минут Не нахожу рдактирование.. что такое флоут, интегер и тд. я знаю, но проблема в самом написании
C++ Где скачать нормальный учебник по C/C++ ? Где можно скачать нормальный учебник по C+\С++ И что ещё надо, программы??? Или что напишите а то я не знаю. Киньте пожалуйста ссылки подробнее

Показать сообщение отдельно
SerЁga
32 / 32 / 4
Регистрация: 18.08.2009
Сообщений: 93
24.09.2009, 22:35     НЕрекурсивный обход бинарного дерева
Код не рекурсивного просмотра дерева которое содержит строку в каждом узле
В ф-цию передается указатель на "корень дерева"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#define N 80
 
struct der
{
    char inf[N];
    int n;
    der *l,*r;
};
 
void see_2(der *dr)
{
    struct stek
    {
        der *d;
        stek *s;
    } *st,*st1=NULL;
    der *dr1;
    dr1=dr;
    int pr=1,i=0;
    for(i=0;i<2;i++)
    {
        st=(stek*)calloc(1,sizeof(stek));
        st->d=dr1;
        st->s=st1;
        st1=st;
    }
    printf("uzel soderzhit %s %d vstrech\n",dr1->inf,dr1->n);
    while(st)
    {
        do
        {
            if(pr && dr1->l) dr1=dr1->l;
            else if(dr1->r) dr1=dr1->r;
            pr=1;
            if(dr1->l && dr1->r)
            {
                st=(stek*)malloc(sizeof(stek));
                st->d=dr1;
                st->s=st1;
                st1=st;
            }
            printf("uzel soderzhit %s %d vstrech\n",dr1->inf,dr1->n);
        } while(dr1->l || dr1->r);
        dr1=st->d;
        st1=st->s;
        free(st);
        st=st1;
        if(dr1->r) pr=0;
    }
}
 
Текущее время: 05:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru