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

Поперечное прохождение бинарного дерева - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Преобразование типов http://www.cyberforum.ru/cpp-beginners/thread931219.html
Увидел код в сети, решил откомпилировать. Думаю какой код не важно. вылезла куча ошибок. на это LPSTR ActW = new TCHAR; ругается с ошибкой C2440 . И на многие другие вещи с преобразованием типа так же выводит ошибку. Вопрос : Чтобы это выполнилось нужно что то подключать или это не выполниться ни когда ?
C++ C++ импорт сертификата в браузер Приветствую. У меня стоит задача написать простенький инсталлер для импорта сертификатов в браузеры IE, firefox, chrome. Писал ранее только на C# и немного php, с С++ не сталкивался... Подскажите вообще в какую сторону рыть? http://www.cyberforum.ru/cpp-beginners/thread931208.html
Не работает operator<< шаблонного класса Vector C++
Компилятор выдает ошибку error LNK2019: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl operator<<... referenced in function _main Помогите дураку докончить злополучный код #include <cstring> #include <iostream> #include <cassert> using namespace std; template < class T > class Vector { private:
C++ Ошибка при компиляции шаблонного вектора
Написал вот такой код: #include <cstring> #include <iostream> #include <cassert> using namespace std; template < class T > class Vector { private: T* mas;
C++ convert char to hex http://www.cyberforum.ru/cpp-beginners/thread931174.html
Здравствуйте. Подскажите пожалуйста как преобразовать строку в hex? То есть имеем функцию convert(char param) { return hex; }
C++ Как работает вставка в двусвязном списке? Привет всем! я не понимаю как работает вставка в двусвязном списке, а точне не понимаю зачем писать нужно вот такую строку cur->next->prev = tmp; в функции insert() ? почему если написать такую строку pm_tail->next->prev = tmp; в функции push_back() , то вставка в конец списка не работает, и наоборот если эту строчку cur->next->prev = tmp; не написать в функции insert(), будет вставлять значение... подробнее

Показать сообщение отдельно
maks_b
4 / 4 / 0
Регистрация: 11.10.2011
Сообщений: 15
31.07.2013, 20:09     Поперечное прохождение бинарного дерева
Прямой порядок:
1. Обращение к узлу.
2. Рекурсивный прямой обход левого поддерева.
3. Рекурсивный прямой обход правого поддерева.
Симметричный порядок:
1. Рекурсивный симметричный обход левого поддерева.
2. Обращение к узлу.
3. Рекурсивный симметричный обход правого поддерева.
Обратный порядок:
1. Рекурсивный обратный обход левого поддерева.
2. Рекурсивный обратный обход правого поддерева.
3. Обращение к узлу.

Добавлено через 9 минут
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <iostream>
using namespace std;
 
struct TreeNode{
    int key;
    TreeNode *Left,*Right,*Parent;
};
void show(TreeNode *tmp)//Прямой порядок
{
    if(!tmp)return;
        cout<<tmp->key<<endl; 
    if(tmp->Left)
        show(tmp->Left);
    
    if(tmp->Right)
    show(tmp->Right);
    
}
void show2(TreeNode *tmp)//Симметричный
{
    if(!tmp)return;
    if(tmp->Left)
    show2(tmp->Left);
    cout<<tmp->key<<endl;
    if(tmp->Right)
    show2(tmp->Right);
    
}
void show3(TreeNode *tmp)//Обратный порядок
{
    if(!tmp)return;
    if(tmp->Left)
    show3(tmp->Left);
        if(tmp->Right)
    show3(tmp->Right);
    cout<<tmp->key<<endl;
    
    
}
void AddNode(TreeNode *&pTree, int Key,TreeNode *Parent)
{
    if (pTree)
    {
        if (Key < pTree->key){
        AddNode(pTree->Left, Key,pTree);}
        else if (Key > pTree->key){
        AddNode(pTree->Right, Key,pTree);}
        
    }
    else{
        pTree = new TreeNode();
        pTree->key = Key;
        pTree->Parent=Parent;
                pTree->Left=NULL;
                pTree->Right=NULL;
    }
}
 
int main(){
    int key=1, kolichesto,i=0;
    cin>>kolichesto;// вводится количество элементов в дереве
    TreeNode *tree = NULL; 
    
    while(i<kolichesto){
        cin>>key;
        AddNode(tree, key, NULL);
        i++;
    }
    if(tree!=NULL){
        show(tree);
                cout<<endl;
                show2(tree);
                cout<<endl;
                show3(tree);
    }
    cin>>key;
    return 0;
}
 
Текущее время: 00:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru