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

Бинарное дерево - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ что за ошибки? http://www.cyberforum.ru/cpp-beginners/thread925423.html
у меня нет диска F (если написать полный путь, будет ошибка) VS 2012
C++ sscanf заборохлил имеется 2 программы. в одной является валидной запись line = "v 1,000000 -1,000000 1,000000"; line = ' '; sscanf(line.c_str(),"%f %f %f %f", &vert.x, &vert.y, &vert.z,... http://www.cyberforum.ru/cpp-beginners/thread925409.html
C++ С файла считать цифры a и b в каждой строчки и вывести их сумму в другой файл
Нужно с файла считать цифры a и b в каждой строчки и вывести их сумму в другой файл. При чем количество таких пар неизвестна. Почему моя программа не работает. Принципиально не использую scanf, а...
A+B C++
Задача A + B Посчитайте A + B. Технические условия Входные данные В каждой строке задано два целых числа A и B (|A|, |B| ≤ 30000). Считывайте данные до конца файла. Выходные...
C++ Зачем нужно private наследование в классах? http://www.cyberforum.ru/cpp-beginners/thread925353.html
Если можно, то покажите небольшой пример
C++ Создание нескольких объектов класса и их сохранение (Нужен пример) Собственно вопрос в названии темы. Можно какую-нибудь самую простейшую программу, которая создает сначала первый объект, далее сохраняет его, а потом создает второй объект этого же класса и чтобы... подробнее

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

Бинарное дерево - C++

18.07.2013, 22:44. Просмотров 938. Ответов 4
Метки (Все метки)

Доброго времени суток. Ребят, я не спец, требуется решить такую задачу:

Написать нерекурсивную программу, печатающую все вершины двоичного дерева. При реализации использовать стек отложенных заданий.Узлы дерева – символы латинского алфавита.
Дерево задается в файле в формате:
m [e [c [a], g [k] ], s [p [o,s], y ] ]
Рисунок, поясниющий пример:
Бинарное дерево

Есть код:
Кликните здесь для просмотра всего текста

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
struct node {
    char data;
    node *left, *right;
    int visited;
    node() : visited(0) {}
};
 
void print(node *root) {
    if (!root) {
        std::cout << "Tree is empty.";
        return;
    }
    std::stack <node *> stack;
    stack.push(root);
    root->visited = 1;
    node *cur;
    while (!stack.empty()) {
        cur = stack.top();
        if (cur->left && !cur->left->visited) {
            stack.push(cur->left);
            cur->left->visited = 1;
        } else if (cur->right && !cur->right->visited) {
            stack.push(cur->right);
            cur->right->visited = 1;
        } else {
            std::cout << cur->data << " ";
            stack.pop();
        }
    }
}


Компилятор ругается на то, что stack не является членом "std".
Помогите разрешить.
Извиняюсь за повторение темы, но не могу писать в прошлую.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru