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

Пример двоичного дерева - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти максимум и минимум в двумерном массиве http://www.cyberforum.ru/cpp-beginners/thread1244605.html
где ошибка Спрашивает, как заполнить двум массив, ищет max и min #include <iostream> #include <ctime> using namespace std;
C++ Сравнение двумерных матриц - разобрать код Разобрать суть кода, что в нем описанно, функций int** create_matrix(int n, int m,int tip) { int**variable= NULL; //переменная variable = (int**)malloc(sizeof(int*)*n); for(int i=0;i<n;i++) variable=(int*)malloc(sizeof(int)*m); printf("Matrix_successfully_created\n",n,m);//матрицу успешно созданно rand_value(variable,n,m); //рандомное значение http://www.cyberforum.ru/cpp-beginners/thread1244597.html
C++ Определить загруженность ядер процессора
Помогите определить загруженность ядер процессора (может как-нибудь получить эти данные из системы).
Стабильный код и xor C++
Доброго времени! Есть такой код:double azim = degrees( atan( s/c )); Проблема в том что c может быть нулём, поэтому вышележащий код быстро превратился в: const double eps = 1e-10; double azim; if( fabs(c) < eps ) { if(( s < 0.0 )^^( c < 0.0 ))
C++ Нужен справочник по заголовкам и их функциям http://www.cyberforum.ru/cpp-beginners/thread1244550.html
Всем привет. Недавно решил научиться программировать на с++ , ранее писал небольшие плагины для игр на pawn. Вроде бы разобрался с синтаксисом и основными моментами, но как написать реальную программу(например, лаунчер) без понятия. У заголовков, как и у функций, названия такие, будто по клаве ударили. Описание на мсдн такое, что поймет только Страуструп. Есть ли какой-то справочник по заголовкам...
C++ Путаница с sftream и операторами << и >> Значит так, иду спокойно по книжке по темам "Открытие и закрытие текстовых файлов", а также "Чтение и запись текстовых файлов" и тут я немного запутался. Для того чтобы считать информацию из файла, мы используем ifstream, но я ведь привык, что оператор >> используется для ввода информации. То же самое и с помещением информации через объект класса ostream, и опять же я привык, что <<... подробнее

Показать сообщение отдельно
tehnar5
31 / 31 / 12
Регистрация: 03.05.2011
Сообщений: 84
19.08.2014, 19:56
В с++ есть такая вещь, как шаблоны. Грубо говоря, они позволяют, в данном случае, сделать дерево, в котором ключами могут быть любые типы, у которых есть оператор сравнения(так как он будет применяться для поиска элемента и тд). Вполне вероятно, что Вам такие нагромождения не нужны и можно попытаться найти обычный код для обычного дерева, хранящего числа.
TreeNode(T) аналогично, по сути, TreeNode(int), TreeNode(string), то есть, вместо Т подставляется конкретный тип данных. Это, соответственно, декларация функции(в данном случае это конструктор), а потому необязательно писать TreeNode(int x), TreeNode(T x) и тд.

Добавлено через 3 минуты
Соответственно, если у Вас есть работающий код дерева, то вот так можно создать вершину, которая хранит int:
TreeNode<int> vertex;
В скобки < > можете подставить любой тип, который Вам нужен.

А вообще, серьезно, если Вам реализация непонятна, найдите попроще, без таких наворотов. Пусть будет не так универсально, пусть не будет создано 100500 классов, но зато будет понятнее, короче и проще
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru