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

B-trees - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сортировка (все отрицательные компоненты заменить их квадратами, оставив другие без изменения...) http://www.cyberforum.ru/cpp-beginners/thread738826.html
Если действительный вектор X (x1, x2, ..., xm) имеет хотя бы одну компоненту, которая меньше 2, то все отрицательные компоненты заменить их квадратами, оставив другие без изменения, в противном...
C++ Контейнер строк Разработать контейнер строк hash_set, реализованный в виде хеш-таблицы. Контейнер должен содержать методы добавления, удаления и проверки на принадлежность, а также эффективную хеш-функцию. Контейнер... http://www.cyberforum.ru/cpp-beginners/thread738821.html
C++ Поиск максимума(минимума)
Заданные действительные числа a1, a2, ..., an. Если при замене отрицательных членов последовательности a1, a2, ..., an их квадратами образуется последовательность, которая не уменьшается, определить...
C++ Программа с функциями и массивами
Вычислить z=s1+s2/s1-s2, где S1 – сумма положительных элементов массива А (70), а S2 – сумма отрицательных элементов матрицы В (7х9). Суммы вычислять в одной подпрограмме.
C++ Заменить минимальный элемент массива А максимальным элементом массива В, а минимум массива В - максимальным элементом массива А. http://www.cyberforum.ru/cpp-beginners/thread738789.html
Заменить минимальный элемент массива А (5х8) максимальным элементом массива В (7х6), а минимум массива В - максимальным элементом массива А.
C++ Дана строка символов. Выделить в ней цветом все символы Прошу помочь создать данную программу: Дана строка символов. Выделить в ней цветом все символы, не являющиеся буквами. подробнее

Показать сообщение отдельно
Razor32
0 / 0 / 0
Регистрация: 15.12.2010
Сообщений: 22

B-trees - C++

19.12.2012, 20:44. Просмотров 238. Ответов 0
Метки (Все метки)

Здравствуйте. Задача такова: вводится В*-дерево без функции, сразу числа. Надо только организовать поиск и показ данного дерева. Я пытался сделать, но не могу понять, что надо еще сделать. Подскажите, пожалуйста!

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
 
using namespace std;
 
const int MAX=3;
const int MIN=1;
 
struct Tree
{
    int v[3];
    Tree *left, *middle, *right;
};
 
int Seach(int val, Tree *t)
{
    if(t!=NULL)
    {
        if(val==t->v[0] && val==t->v[1] && val==t->v[2])
            return val;
        else
        {
            while(t->left!=NULL && t->middle!=NULL && t->right!=NULL)
            {
                Seach(val,t->left);
                Seach(val,t->middle);
                Seach(val,t->right);
            }
        }
    }
    else
        return -1;
}
 
void Show(Tree *t, int level=0)
{
    if(t==NULL)
        return;
    else
    {
        Show(t->left,++level);
        for(int i=0;i<level;i++)
            cout<<"   ";
        cout<<t->v[0]<<"\n";
        cout<<t->v[1]<<"\n";
        cout<<t->v[2]<<"\n";
        level--;
    }
    for(int i=0;i<level;i++)
            cout<<"   ";
    Show(t->middle, ++level);
    Show(t->right, ++level);    
}
 
int main()
{
    Tree *t=new Tree();
    t->left=new Tree();
    t->middle=new Tree();
    t->right=new Tree();
 
    t->v[0]=50;
    t->v[1]=150;
 
    t->left->v[0]=0;;
    t->left->v[1]=5;
    t->left->v[2]=10;
 
    t->middle->v[0]=70;
    t->middle->v[1]=100;
    t->middle->v[2]=120;
 
    t->right->v[0]=260;
    t->right->v[1]=300;
    t->right->v[2]=400;
 
    //cout<<t->right->v[1];
 
    int k=Seach(300,t);
 
    cout<<k;
 
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru