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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
C/man
3 / 3 / 0
Регистрация: 29.05.2012
Сообщений: 44
#1

одинаковые элементы в дереве - C++

02.12.2012, 12:42. Просмотров 391. Ответов 0
Метки нет (Все метки)

По задаче:
нужно определить, есть ли в дереве хотя бы 2 одинаковых элемента. Если есть - вывести "да", нет - "нет".

создаю дерево и вывожу на экран, кто-то может по-другому создаст
подскажите, как осуществить поиск одинаковых элементов?
как каждую вершину сравнить с каждой, или, быть может, есть другой вариант.


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
#include <iostream>
 
struct Node {
        int key;
        Node *left, *right;
    };
    typedef Node *PNode;
 
PNode MakeTree (int data[], int from, int n) 
{
    PNode Tree;
    int n1, n2;
    if (n==0) 
        return NULL;  //îãðГ*Г*ГЁГ·ГҐГ*ГЁГҐ ðåêóðñèè
    Tree=new Node; //âûäåëèòü ГЇГ*ìÿòü ïîä âåðøèГ*Гі
    Tree->key=data[from]; //Г§Г*ГЇГЁГ±Г*ГІГј Г¤Г*Г*Г*ûå (êëþ÷)
    n1=n/2;
    n2=n-n1-1;
    Tree->left=MakeTree(data, from+1, n1);
    Tree->right=MakeTree(data, from+1+n1, n2);
    return Tree;
}
 
void Print(PNode Tree)
{
    if (! Tree) return;
    std::cout << Tree->key << std::endl;
    Print(Tree->left);
    Print(Tree->right);
} 
 
 
 
main()
{
    int n, data[]={1, 4, 3, 3, 7 , 9, 8, 10};
    PNode Tree;
    n=sizeof(data)/sizeof(int);
    Tree=MakeTree(data, 0, n);
    Print(Tree);
    system("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2012, 12:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос одинаковые элементы в дереве (C++):

Одинаковые элементы в дереве - C++
Хотел задать вопрос, если при добавлении повторяющегося элемента в список, представляемый в виде дерева, как его разместить правильно? У...

нужно разместить элементы таким образом, чтобы одинаковые элементы располагались на определенном расстоянии - C++
Добрый день. У меня возникла проблема с решением задачи. Допустим есть матрица(размер приблизительно 30х20), она заполнена цифрами. нужно...

Проблема: создаются лишние элементы в бинарном дереве - C++
Вот такой код: #include &lt;iostream&gt; using namespace std; class Node { public:

Как поменять местами максимальный и минимальный элементы в дереве? - C++
как поменять местами максимальный и минимальный елемент в дереве?

Одинаковые элементы - C++
Задача по C\C++ : В неупорядоченном массиве есть совпадающие элементы. Из каждой группы одинаковых элементов оставаить только один,...

ОДинаковые элементы в списке - C++
Составить программу которая в списке &quot;0&quot;,&quot;1&quot;,&quot;2&quot;,&quot;-1&quot;,&quot;-2&quot;,&quot;3&quot;,&quot;-3&quot;,&quot;0&quot;,&quot;-3&quot;,&quot;3&quot; проверяет есть ли в списке одинаковые...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2012, 12:42
Привет! Вот еще темы с ответами:

Одинаковые элементы массива - C++
Надо определить сколько в массиве одинаковых элементов, по разному пробывала и никак не получается. #include &lt;iostream&gt; #include...

в массиве одинаковые элементы - C++
Проверка наличия в массиве одинаковых элементов

Подсчитать одинаковые элементы - C++
Уважаемые опытные программисты! Помогите решить мне одну проблему. Суть её в следующем: Мне нужно посчитать количество одинаковых...

Одинаковые элементы в set - C++
Можно ли каким-то образом добавить в set одинаковые элементы?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru