Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
1 / 1 / 0
Регистрация: 26.11.2020
Сообщений: 38

Бинарные деревья, С++

17.03.2021, 16:38. Показов 4380. Ответов 22

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня тут такое задание, не могли бы помочь?
Написать рекурсивную функцию, которая определяет глубину заданного элемента на дереве и возвращает –1, если такого элемента нет. c++
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
#include <iostream>
#include <ctime>
#include <string>
 
using namespace std;
struct Tree {
    int data;
    Tree* left, * right;
};
void add(int x, Tree*& p)
{
    int i = rand() % 2;
 
    if (p == NULL)
    {
        p = new Tree;
        p->data = x;
        p->right = p->left = NULL;
        return;
    }
 
    if (i == 0) add(x, p->right);
    else add(x, p->left);
}
int element_depth(int b, Tree*& p, int depth) {
    if (p != NULL) {
        depth++;
        if (b == p->data)
            return depth;
        else {
            int d;
            d = element_depth(b, p->left, depth);       // сначала рекурсивный обход левого поддерева
            if (d == -1)                                // не нашли?
                d = element_depth(b, p->right, depth);  // тогда рекурсивный обход правого поддерева
            return d;
        }
    }
 
    else
        return -1;
}
Я вот понял, что функции int main() не хватает, но какое условие прописать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.03.2021, 16:38
Ответы с готовыми решениями:

Бинарные деревья
Имею три файла: Скажите пожалуйста почему я не могу создать э-т m?(Класс tree) Он мне пишет - undefined reference to...

Бинарные деревья
Вот задачка: Для заданного бинарного дерева поиска проверить условие: • для каждой вершины высота левого поддерева отличается от...

Бинарные деревья
Подсчитать количество элементов на n-уровне бинарного дерева. Подскажите как можно решить используя любой обход в глубину но без...

22
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
18.03.2021, 21:42
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Ghead Посмотреть сообщение
oleg-m1973, А где можно посмотреть построение само, я просто новичок в этом деле, в отладчике?
Ну, пройдись в отладчике, F5-F10-F11. Не знаю, что ты там хочешь увидеть.
0
1 / 1 / 0
Регистрация: 26.11.2020
Сообщений: 38
24.03.2021, 17:31  [ТС]
oleg-m1973, не могу посмотреть..

Добавлено через 34 минуты
oleg-m1973, Как выглядит дерево...

Добавлено через 1 час 7 минут
oleg-m1973, где же это увидеть?
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
27.03.2021, 16:12
Цитата Сообщение от Ghead Посмотреть сообщение
oleg-m1973, где же это увидеть?
Что "это"? Что конкретно ты хочешь увидеть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.03.2021, 16:12

Бинарные деревья
Выведите номера вершин, у которых количество потомков в левом поддереве не равно количеству потомков в правом поддереве. int...

Бинарные деревья
Очень нужна помощь, вообще деревья не понимаю!!!:( Вершина дерева содержит указатель на строку и N указателей на потомков. Функция...

бинарные деревья
Вершина двоичного дерева содержит указатель на строку и указатели на правое и левое поддеревья. Строки в дереве упорядочены по возрастанию....

Бинарные деревья
Компилятор выдаёт ошибки в 9, 10 и 12, 13 строках: invalid conversion from 'int' to 'sNode*' Подскажите пожалуйста, что не так. ...

Бинарные деревья
Доброго времени суток, нужна помощь, дали задание...Вершина бинарного дерева содержит ключ, строку и два указателя на потомков.Составить...


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

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru