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

Удалить узлы из дерева - C++

Восстановить пароль Регистрация
 
Виkтория
 Аватар для Виkтория
1 / 1 / 0
Регистрация: 04.06.2013
Сообщений: 63
27.10.2013, 20:19     Удалить узлы из дерева #1
помогите через рекурсию (((

Добавлено через 23 минуты
вот не правильно , знаю ...но как ???


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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream>
 
 
struct node
{
    int info;
    int c;
    node *ll,*rl;
};
 
 
node *tree(node *p,int w)
{
    if (p==NULL)
    {
        p=new node;
        p->info=w;
        p->ll=NULL;
        p->rl=NULL;
        p->c=1;
    }
    else
        if (w==p->info)
        {
            p->c=p->c+1;
        }
        else 
            if (w<p->info)
            {
                p->ll-tree(p->ll,w);
            }
            else
                p->rl=tree(p->rl,w);
    return p;
 
}
void treeprint(node *p)
{
    if (p!=NULL)
    {
        printf("%d\t%d\n", p->c,p->info);
        treeprint(p->ll);
        treeprint(p->rl);
    }
    
}
 
 
void main()
{   setlocale(LC_ALL,"Russian");
    node *root;
    int w;
    root=NULL;
    printf("Введите элементы дерева:");
    scanf("%d", &w);
    while (!feof(stdin))
    {
        root = tree(root,w);
        scanf("%d", &w);
    }
 treeprint(root);
 system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2013, 20:19     Удалить узлы из дерева
Посмотрите здесь:

C++ Рекурсия: удалить из дерева часть вершин, чтобы оставшееся дерево стало пирамидой
C++ Найти и удалить среднюю по значению из вершин дерева
Как удалить корень дерева? C++
C++ Удалить узел бинарного дерева
C++ В двоичном дереве удалить все узлы, значения которых является простым числом
Сформировать стек по файлу чисел. Удалить из стека узлы с минимальным значением информационного поля C++
C++ Удалить из бинарного дерева всех отцов, имеющих одного сына
C++ Удалить из дерева ветвь с вершиной, имеющей заданный ключ
Удалить из дерева ветвь с вершиной, имеющей заданный ключ C++
C++ Удалить из бинарного дерева ветвь с вершиной, имеющей заданный ключ
C++ Удалить из бинарного дерева ветвь с вершиной, имеющий заданный ключ
Удалить максимальный лист дерева C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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