Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Бинарные деревья. Вывод потомков для каждого из узлов бинарного дерева поиска https://www.cyberforum.ru/ cpp-beginners/ thread2485107.html
Здравствуйте, уважаемые форумчане! Продолжая изучать бинарные деревья, решил подумать о выгодности использования третьего указателя, а именно указателя на родительский элемент. Если кому-то...
C++ Одинаковые переменные в разных .h
Доброго времени суток. Есть у меня 2 .h файла (назовем их firstHeder, secondHeder) которые содержат в себе по одной одинаковой функции и одной одинаковой переменной. Так же есть класс (Назовем его...
Какое значение примет переменная x после выполнения следующего фрагмента программы C++
unsigned short int x,y; scanf("&d&d", &x, &y); x<<=y; при y, равном 8, x, равном 56506? В ответ введите шестнадцатиразрядное двоичное число.
C++ Крашится приложение при чтении адреса памяти Здравствуйте. Мой скрипт работает с другой офисной программой с помощью инжекта, помогая клиенту автоматизировать некоторые действия. Мне необходимо проверять состояние чекбокса, затем устанавливать... https://www.cyberforum.ru/ cpp-beginners/ thread2485064.html
C++ Сортировка по нескольким параметрам https://www.cyberforum.ru/ cpp-beginners/ thread2485061.html
Доброго времени суток, мне нужно сделать сортировку, по нескольким параметрам, т.е. сначало по имени, потом по номеру телефона, потом по улице, потом по номеру дома, естественно я могу это сделать,...
C++ Задача на инверсии
Здравствуйте. Прошу помощи с задачей: "Во время лыжных соревнований N спортсменов стартуют с интервалом в 1 минуту. Скорость каждого лыжника на дистанции постоянна: i-й лыжник преодолевает 1 км...
C++ Время выполнении функции
Можно ли сделать так, что б к примеру, функция _getch(), если она не выполнилась(то есть она не вернула какое-то значение за определенное время) за определенное время, то пусть программа выполняет...
C++ Неработающая нотация char* Добрый день, господа и дамы. Столкнулся с такой проблемой: Изучаю тему "Строки и массивы строк". В данной теме сказано, что можно использовать char* для, например, написания какого-либо текста... https://www.cyberforum.ru/ cpp-beginners/ thread2485027.html
C++ Сортировка массива указателей на строки https://www.cyberforum.ru/ cpp-beginners/ thread2485018.html
Здравствуйте. Есть две функции, которые используются для сортировки - одна, реализуя метод пузырьковой сортировки, вызывает в себе вторую, которая при необходимости меняет местами строки. Задание...
C++ Журнал событий Есть объект. И есть 30 сигналов. У каждого сигнала есть своё одно состояние (либо авария(красный цвет), либо предупреждение( жёлтый цвет), либо нормальная работа «зелёный цвет»). Когда я нажимаю на... https://www.cyberforum.ru/ cpp-beginners/ thread2484939.html
4926 / 3313 / 1394
Регистрация: 07.05.2019
Сообщений: 10,214
Записей в блоге: 1
23.07.2019, 21:11 0

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

23.07.2019, 21:11. Просмотров 943. Ответов 5
Метки (Все метки)

Лучший ответ Сообщение было отмечено Fixer_84 как решение

Решение

Цитата Сообщение от Fixer_84 Посмотреть сообщение
oleg-m1973, буду премного благодарен, если вы напишите вариант этой программы без использования данного указателя.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
BTree* getNodeLevelParent(BTree* node, int key, int n, BTree *parent = nullptr) 
{
    if (node == NULL) {
        return 0;
    }
    if (node->data == key) 
        return parent? parent: node;
    
    if (!parent)
        parent = node;
    
    if (n)
        --n;
    else
        parent = node;
 
    if (key < node->data) {
        return getNodeLevelParent(node->left, key, n, parent);
    }
    else if (key > node->data) {
        return getNodeLevelParent(node->right, key, n, parent);
    }
}


Вернуться к обсуждению:
Бинарные деревья. Вывод потомка, находящего на заданное число уровней выше заданного элемента
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.07.2019, 21:11
Готовые ответы и решения:

Бинарные деревья: неправильный вывод
неправильно выводит дерево,что делать? #include&lt;iostream&gt; using namespace std; struct...

Бинарные деревья, вывод дерева на экран
Создание бинарное дерево, помогите с выводом дерева на экран #include &lt;iostream&gt; #include...

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

Заданы 6 цифр и число. Используя скобки и бинарные арифметические операции +,-,*,/, получить заданное число
помогите написать программу на C#, как-нибудь отблагодарю Заданы 6 цифр и число. Используя...

5
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.