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

Процедура обхода для дерева - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ ЛДС в ЛОС http://www.cyberforum.ru/cpp-beginners/thread817292.html
У меня есть код на удаление элемента по определенному ключу в двухсвязном списке void lds::del() {clrscr(); lds *r;lds *ptr; int key; cout<<"\n Vvedite kluch elementa dlya udaleniya"; cin>>key; r=p; while(r!=NULL&&r->b!=key)
C++ Создание функций, с произвольным количеством аргументов Всем доброго. Мне нужно создать функцию(с произвольным количеством аргументов), который использует первую(тоже с произвольным количеством аргументов), но с некоторыми изменениями. Не знаю как правильно передать аргументы. Для примера: void sample1(int id, ...) { const char* str = GetSampleText(id); // GetSampleText(int id) - возвращает некий const char* va_list ap; http://www.cyberforum.ru/cpp-beginners/thread817280.html
Хочу написать функцию pow(), ошибка: (5,27):Too few parameters in call to 'step(float,int)' C++
Хочу написать функцию pow(), ошибка: (5,27):Too few parameters in call to 'step(float,int)' float step(float x,int n) { if(n>=3) return x*step(n-1); return x*x; } Помогите исправить.
C++ Разность дроби и целого числа
Нужно перегрузить операции "-" и "=". Конструкторы класса должны преобразовывать оба операнда в числовой формат обыкновенной дроби и метод, реализующий алгоритм Евклида. Не могу понять, как сделать функции перегрузки. Помогите, пожалуйста! Код программы:
C++ Параметр в экземпляре класса http://www.cyberforum.ru/cpp-beginners/thread817253.html
Добрый день всем. имеется обрывок класса template <class TKey, class TStoredData> class FixedCache { public: enum TRemoveStrategy {
C++ Если вдруг IntelliSense оказался вдруг Часто возникают проблемы с работой IntelliSense. Пропадает всеми любимое подчеркивание ошибок и т.д. Данная беда особенно характерна для Windows XP, в связи с этим Microsoft выпустило исправление. Действенно, но требует лицензионного соглашения. Хотя my vc2010 скачана с нэта и успешно crak-crak, - исправление успешно решило трабл. Так что, всем нуждающимся ссыль в помощь. )) подробнее

Показать сообщение отдельно
eocron
Кактус
 Аватар для eocron
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
25.03.2013, 17:35     Процедура обхода для дерева
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
template<class T>// T - Тип твоего узла, например называется node
int h(T *a)//рекурсивная функция
{
    if(a)
    {
         int height_left = h(a->l);
         int height_right = h(a->r);
         
         //здесь делай что-хочешь обращайся к данным узла [a] или высчитывай разницу между высотами или еще что
         //собственно, просто повторенный точь в точь алгоритм сверху
 
         return (height_left > height_right)? height_left : height_right;
    }
    return 0;
}
Пихаешь в функцию корень дерева - на выходе получаешь высоту максимального поддерева.
 
Текущее время: 11:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru