С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Выяснить, можно ли из строки st1 сделать строку st2 путем перестановки символов Ребят помогите пожалуста) Даны две строки st1 и st2. Выяснить можо ли из строки st1 сделать строку st2 путем перестановки символов. https://www.cyberforum.ru/ cpp-beginners/ thread208472.html Цикл и вектор C++
Проблема в том, что оно входит в цикл ака for(i=0;i<-1;i++) Сразу даю кусок кода =) В функцию передаем координаты вершин фигуры, прямоугольник, по которому отсекаем ее и цвет points - vector<point> (в point находятся x и y) rect - структура из left, right, top, bottom void Cross(points p, rect r, int cc) { p.push_back(p);//добавим в начало первую точку, чтобы всю фигуру анализировать...
C++ массивы https://www.cyberforum.ru/ cpp-beginners/ thread208467.html
решить задачу с помощью одномерного массива: Дан целочисленный массив А. Если массив А упорядочен по убыванию, то переставить местами элементы массива в каждой паре соседних элементов: А и A, А и A, … и решить с помощью двух мерного массива: Вариант №1. Дан целочисленный массив А. Сформировать одномерный массив В, элементами которого являются средние арифметические значения элементов...
C++ Массив структур Информация о дисциплине содержит название, количество часов лекций, количество часов практических занятий, фамилию преподавателя. Вывести информацию о дисциплинах, которые читаются заданным преподавателем. #include<iostream.h> #include<conio.h> #include<math.h> #include<string.h> #include<stdlib.h> void main(void) { clrscr(); https://www.cyberforum.ru/ cpp-beginners/ thread208452.html
Текстовые файлы C++
Добрый день! Мне необходимо обработать текстовый файл, подсчитав в нем количество слов, предложений и абзацев. В каждой строчке не более 20000 символов. Пишу программу #include <stdio.h> #include <string.h> int control (char *str) { int i = 0, k = 0; while ((str != '\0') || (str != '\n')) { if (((str >= 'A' && str <= 'Z') || (str >= 'a' && str <= 'z')) && ((str !=...
C++ шаблоны и связь между файлами в проекте Собственно, проблема в следующем: если убрать комментарии в файле list.h, то все нормально компилируется. если убрать комментарии в файле list.cpp, то в point.cpp выводится ошибка "undefined reference" в принципе, проблема решаема, например, подключением в point.h вместо list.h list.cpp, но стало интересно почему появляется эта ошибка? point.h #include "list.h" https://www.cyberforum.ru/ cpp-beginners/ thread208438.html
C++ Написать программу, которая считает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв. https://www.cyberforum.ru/ cpp-beginners/ thread208419.html
нужно чтобы в файл записывалось пользователем русские и английские слова, программа програма считывала только анг язык, и выводила только те слова (агл) которые начинаются на гласную букву)
C++ 1 программа по структуре и 2 по символьным строкам
1. Если первый аргумент командной строки - опция -а, то распечатать остальные аргументы без их первых символов, а если первой идет опция -r, то распечатать аргументы через один в обратном порядке. (Если аргументов нет - выдать сообщение) 2. Распечатать те слова, в которых либо буквы упорядочены по алфавиту, либо каждая буква входит в слово не менее двух раз (т.е. слова типа BEER, АBBА). 3....
C++ Программирование с использованием классов. Помогите решить. Создать класс квадрат, член класса - длина стороны. Предусмотреть в классе методы вычисления и вывода сведений о фигуре – периметр, площадь, диагональ. Создать производный класс – куб, добавить в класс метод определения объема фигуры, перегрузить методы расчета площади и вывода сведений о фигуре. Написать программу, демонстрирующую работу с классом: дано N1 квадратов и N2... https://www.cyberforum.ru/ cpp-beginners/ thread208410.html C++ Решение задач линейной алгебры https://www.cyberforum.ru/ cpp-beginners/ thread208409.html
Помогите пожалуйста решить. Решив систему уравнений методом Гаусса, вычислить H=E-XXT. 8,2 x1−3,2 x2+14,2 x3+14,8 x4=−8,4 5,6 x1−12x2+15 x3−6,4 x4=4,5 5,7 x1+3,6 x2−12,4 x3−2,3 x4=3,3 6,8 x1+13,2 x2−6,3 x3−8,7x 4=14,3
Определить содержит ли последовательность хотя бы два рядом стоящих положительных числа C++
Помогите пожалуйста решить. Буду очень признательна. Вводится последовательность целых чисел, 0 – конец последователь- ности. Определить содержит ли последовательность хотя бы два рядом стоящих положительных числа. 1. Дублирование тем запрещено правилами форума (п. 3.4). 2. Именуйте темы осмысленно. Название темы должно максимально полно отражать ее содержание.
C++ Обработка одномерных массивов. Удалить из массива последнюю группу элементов, представляющих собой знакочередующийся ряд. Найти максимальный и минимальный элементы массива до и после удаления. Помогите пожалуйста решить, очень надо! https://www.cyberforum.ru
ЧакЭ одобряЭ
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
12.12.2010, 22:56  [ТС] 0

Нерекурсивный обход дерева - C++ - Ответ 1195524

12.12.2010, 22:56. Показов 16977. Ответов 12
Метки (Все метки)

Ответ

но почему его назвали emptry?
по-моему все-таки empty называется для стека по крайней мере

Добавлено через 43 минуты
вот перебивал обход в прямом порядке
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
struct stack
{
  uzel *val;
  struct stack *next;//äîáàâèë â íà÷àëî èçâëåê â íà÷àëî
};
 
void push(stack *s,uzel *el)
{
    stack *elem=new stack;
    elem->next=s;
    elem->val=el;
    s=elem; 
}
 
uzel* pop(stack *s)
{
    stack *temp=s;
    s=s->next;
    stack *simp=temp;
    delete temp;
    return simp->val;
}
 
void print_tree_2(uzel *root)
{
    
    uzel *dr=root;
    stack *ss;
    push(ss,dr);
    while (ss!=0)
    {
        dr=pop(ss);
        cout<<dr->key;
        if (dr->right!=0)
         push(ss,dr->right);
        if (dr->left!=0)
         push(ss,dr->left);
    }
}
но ничего не выводит

Вернуться к обсуждению:
Нерекурсивный обход дерева C++
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.12.2010, 22:56
Готовые ответы и решения:

НЕрекурсивный обход бинарного дерева
уважаемые программисты! нужно написать алгоритм обхода бинарного дерева без использования...

Нерекурсивный прямой обход BST дерева
Дайте пожалуйста пример реализации НЕрекурсивного прямого обхода дерева

Обход дерева
Всем доброе время суток. Не могу нормально обойти дерево и просмотреть введённое, по всей...

обход дерева
struct SAcson { int l,c; // строка, столбец float x; // заряд bool e; // возбуждающий или...

12
12.12.2010, 22:56
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.12.2010, 22:56
Помогаю со студенческими работами здесь

Обход дерева
Вот начал читать про деревья и способы их обхода (PreOrder, InOrder и PostOrder). С алгоритмами...

обход дерева
Здравствуйте! У меня вопрос: Есть класс: class D { vector &lt;A*&gt; count; }; ...

Обход дерева)
Прога работает) но сказали, что нужно сделать отдельную функцию обхода дерева) можете помочь)...

Обход бинарного дерева С++
Нужна помощь! Просмотрел много источников, но так и не нашёл своего ответа...Суть задачи состоит в...

0
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru