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

Дерево поиска. добавление элемента - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти сумму ряда http://www.cyberforum.ru/cpp-beginners/thread262416.html
Прошу помощи с написанием программы на Си s=(2/1!)+(4+6/2!)+(5+8+11/3!)+(6+10+14+18/4!)+...........n Благодарю всех откликнувшихся на просьбу!!!!
C++ таблица значений функции F(x) помогите пожалуйста - моя первая в жизни лаба по С++, хочу сама разобраться - не получается Составить программу, которая выводит на экран таблицу значений функции F(x) в разных диапазонах. Значение функции F(x) вычислить за данной формулой. Определите области допустимых значений параметров формул. Диапазон и шаг изменения аргумента задать во время выполнения программы из клавиатуры. ... http://www.cyberforum.ru/cpp-beginners/thread262409.html
C++ Калькулятор
Доброго времени суток, Народ! Помогите плиз с задачей. Нужен исходник калькулятора, самого простого, на 4 действия. Заранее спасибо!!!
C++ Определить процедуру вычисления площади треугольника по координатам его вершин
Даны натуральное число n, действительные числа x1, y1, x2, y2,…, xn,yn. Найти площадь n-угольника,вершины которого при некотором последовательном обходе имеют координаты (x1, y1), (x2, y2),…, (xn, yn). (Определить процедуру вычисления площади треугольника по координатам его вершин.)
C++ Откомпилированные экзешники http://www.cyberforum.ru/cpp-beginners/thread262383.html
Всем привет. Я в С++ новичок, неделю назад начал изучать. У меня возникла проблема- я запускаю откомпилированный екзешник, открывается окно консоли и через секунду вылетает. Как это предотвратить? P.S: Если проблема в компиляторе, то подскажите пожалуйста, как можно выяснить, какой стоит у меня, и откуда можно скачать нормальный
C++ методы сортировки Сравнить эффективность алгоритмов сортировки прямыми обменами и Шелла. a) разработать подпрограммы, реализующие алгоритмы сортировки, указанные в задании. Для выполнения настоящей лабораторной работы достаточно реализовать эти алгоритмы в простейшем варианте – для сортировки одномерного целочисленного массива. Однако создаваемый исходный код может оказаться полезным при выполнении... подробнее

Показать сообщение отдельно
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.03.2011, 11:32     Дерево поиска. добавление элемента
Привет. Поясните кое что с деревом.
Допустим есть класс
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class bst
{
    public:
        bst(): root(NULL) {}
        virtual ~bst() {}
 
        void insert(binaryNode*& , size_t);
        void inorder(binaryNode*);
        binaryNode* getRoot(){  return root; }
 
    protected:
        node* root;
    private:
};

и операция добавления элемента в дерево
C++
1
2
3
4
5
6
7
8
9
10
void bst::insert(binaryNode*& r , size_t key){
    if ( r == NULL ){
         r = new binaryNode(key);
        return;
    }
    else if (key < r -> key)
        insert(r ->left, key);
    else if (key > r -> key)
        insert(r -> right, key);
}
В функцию передается по ссылке указатель на корень дерева(root), но после, например, 5 операций insert, root ведь будет указывать не на вершину дерева а на последний вставленный элемент.
И тогда getRoot() тоже будет возвращать указатель не на вершину дерева а на последний вставленный элемент.
А мне хотелось бы чтобы root всегда указывал на вершину.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru