0 / 0 / 0
Регистрация: 13.04.2016
Сообщений: 3
1

Создать класс "Дерево" и метод, который выводит сумму узлов дерева

13.04.2016, 10:35. Показов 3241. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет ребят.выручайте.
Создать класс "Дерево" и метод, который выводит сумму узлов дерева
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.04.2016, 10:35
Ответы с готовыми решениями:

Создать класс "Дерево" и метод, который выводит сумму узлов дерева
Создать класс "дерево", содержащий целые числа и метод, который выводит сумму узлов дерева.

Создать дерево и определить уровни узлов дерева содержащие букву-а
Создать дерево и определить уровни узлов дерева содержащие букву-а

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

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

1
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
13.04.2016, 14:54 2
Лучший ответ Сообщение было отмечено Igor11 как решение

Решение

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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <iostream>
#include <cstdlib>
 
 
template<class T>
class tree {
    struct node {
        T     val;
        node* left;
        node* right;
    };
private:
    node*  tr;
    size_t cnt;
public:
    tree(void):tr(NULL), cnt(0){}
    tree(const tree&);
    ~tree(){
        clear();
    }
public:
 
    //вставка
    bool insert(const T& val){
        node* p = tr, *i = tr;
        while(i != NULL){
            p = i;
            if(val < i->val)
                i = i->left;
            else if(val > i->val)
                i = i->right;
            else
                return false;
        }
 
        node* n = new (std::nothrow) node();
        if(n != NULL){
            n->val  = val;
            n->left = n->right = NULL;
 
            if(p == NULL)
                tr = n;
            else if(val < p->val)
                p->left  = n;
            else
                p->right = n;
            ++cnt;
        }
        return (n != NULL);
    }
 
    //сумма элементов(метод, который выводит сумму узлов дерева)
    T get_sum(void) {
        return __sum(tr);
    }
 
    //удаление всех
    void clear(void){
        __clear(tr);
        tr  = NULL;
        cnt = 0;
    }
 
private:
 
    T __sum(const node* p){
        if(p != NULL)
            return p->val + __sum(p->left) + __sum(p->right);
        return 0;
    }
 
    void __clear(node* p){
        if(p != NULL){
            if(p->left != NULL)
                __clear(p->left);
            if(p->right != NULL)
                __clear(p->right);
            delete p;
        }
    }
 
    size_t getSize(void) const { return cnt; }
    //...
};
 
 
int main(void){
    tree<size_t> tr;
    for(int i = 0; i < 30; ++i)
        tr.insert((size_t)(rand() % 40));
 
    std::cout << "sum: " << tr.get_sum() << std::endl;
    tr.clear();
    return 0;
}
Пример работы кода
1
13.04.2016, 14:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2016, 14:54
Помогаю со студенческими работами здесь

Создать AVL дерево; найти количество узлов дерева, содержание которых начинается с заданного символа
Нужно написать программу, которая создает сбалансированное бинарное дерево. Тип информационного...

Дополнить класс, включив метод подсчета числа узлов заданного бинарного дерева
Изучить приведенный пример реализации класса «Дерево двоичного поиска», для которого реализованы...

Создал семейное дерево. написать метод, который выводит двоюродных братьев/сестер человека по имени
Помогите реализовать этот метод, пожалуйста package Family; import java.util.*; public class...

Создайте метод, который в качестве аргумента будет принимать сумму платежа, введенную экономистом банка. Метод выводит н
Добрый день)помогите пожалуйста ,буду очень благодарен.заранее спасибо)) создайте класс Bank....

Создать класс, который имеет параметризованный метод, который рассчитывает, простое ли число
Создать класс, который имеет параметризованный метод, который рассчитывает, простое ли число.

Задать дерево и определить уровни узлов дерева, содержащих букву «а»
Задать дерево и определить уровни узлов дерева, содержащих букву «а». заранее спасибо


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru