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

Сбалансированное дерево - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Серьезная оптимизация http://www.cyberforum.ru/cpp-beginners/thread699863.html
Участвую в олимпиаде, уже придумал алгоритм который обязан работать, но к сожалению вылетаю по тайм_лимит. Алгоритм линейный, я уже не знаю как программу оптимизировать. Вот код: #include <vector> #include <iostream> //#include <cstdlib> //#include <cstdio> using namespace std;
C++ В произвольном тексте вставить между вторым и третьим словом новое слово "В произвольном тексте вставить между вторым и третьим словом новое слово." Помоги пожалуйста)) С коментариями если можно для чайника))) http://www.cyberforum.ru/cpp-beginners/thread699833.html
C++ Условие выводя ошибки
Написать условие если у нас три строки а мы просим например пятую,то программа выдавала ошибку в сообщение#include <vcl.h> #include<stdio.h> #include<stdlib.h> #include<conio.h> #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused int main(int argc, char* argv)
C++ Деструктор не вызывается
В одном классе я создаю объект, и если проверку не проходит, я его возвращаю в другой метод, дабы у меня там начало всех начал,Главное Меню void InputData(){ while(true){ ... Bank B(tmpId); if(!B.CheckId()) return InputData(); if(!B.CheckAttempt()) return InputData(); GetPassword();
C++ Ошибка "неоднозначный вызов перегруженной функции" http://www.cyberforum.ru/cpp-beginners/thread699812.html
#include "stdafx.h" #include <iostream> #include <conio.h> #include "math.h" using namespace std; int count(int a,int b) { return a/pow(10,b-1)%10;
C++ Дана последовательность чисел а1, а2, ..., аn. Требуется переставить числа в порядке возрастания. Сортировка вставками. Дана последовательность чисел а1, а2, ..., аn. Требуется переставить числа в порядке возрастания. Делается это следующим образом. Пусть а1, а2, ..., аi —упорядоченная последовательность, т.е. a1 <= а2<= ... <= аi Берется следующее число ai+1 и вставляется в последовательность так, чтобы новая последовательность была также возрастающей. Процесс производится до тех пор, пока... подробнее

Показать сообщение отдельно
Wolkodav
 Аватар для Wolkodav
600 / 453 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
16.11.2012, 23:33     Сбалансированное дерево
Народ, надо написать алгоритм создания сбалансированного дерева.
Вот сам алгоритм. Все хорошо, он работает, но не хватает одного элемента, т.е. он считывает на один элемент меньше чем надо!! Подскажите пожалуйста где ошибка.
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
Tree* BildTree(Tree* First,int n,ifstream* f)
{
    cout<<n<<endl;
    int left;
    int right;
    Tree* BranchAdd=First;
    int key;
    if (n==0)
    {
        return BranchAdd;
    }
    else
        if (n==1)
        {
            return First;
        }
        else
        {
            left=n/2;
            right=n-1-n/2;
            (*f)>>key;
            Add(BranchAdd,key,0);
            BildTree(BranchAdd->left,left,f);
            if (right>0)
            {
                (*f)>>key;
                Add(BranchAdd,key,1);
                BildTree(BranchAdd->right,right,f);
                First=BranchAdd;
                return First;
            }
        }
    return First;
}
Вот структура:
C++
1
2
3
4
5
6
struct Tree
{
    int key;
    Tree* left;
    Tree* right;
};
И Добовление узла
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void Add(Tree* branch,int key,bool flag)
{
    Tree* BrAdd=new Tree();
    BrAdd->key=key;
    if (flag)
    {
        cout<<"Right"<<key<<endl;
        branch->right=BrAdd;
    }
    else
    {
        cout<<"Left"<<key<<endl;
        branch->left=BrAdd;
    }
}
cout для дебага вставлял.
Помогите пожалуйста, укажите ошибку(

Добавлено через 25 минут
Народ, ау помогите плиз(
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru