Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.12.2012, 01:18   #1
Laurensii
 
Регистрация: 24.12.2012
Сообщений: 3
По умолчанию Нужно написать функцию, которая проверяет содержатся ли элементы из первого дерева во втором дереве, в указанном в 1 дереве порядк

Код:
#include <iostream>
#include <conio.h>
using namespace std;
struct node{
	int n;
	
	node *l, *r;
};
class Tree{

	public:
		node *root;
		Tree(){root=0;}
		void DelTree(node *t);
		~Tree(){}
		void push(node*&t, int);
		void print(node *t);
};
void push(int a,node *&t)
{
    if (t==NULL) 
    {
        t=new node; 
        t->n=a; 
        t->l=t->r=NULL;
        return; 
    }
       
        if (a>t->n) push(a,*&t->r); 
        else push(a,*&t->l); 
}
void Tree::DelTree(node *t)
{
 if(t->l!=0)DelTree(t->l);
 if(t->r!=0)DelTree(t->r);
 delete t;
}
void print (node *t,int u) 
{
    if (t==NULL) return; 
    else 
    {
    print(t->l,++u);
    for (int i=0;i<u;++i) cout<<"|";
    cout<<t->n<<endl;
    u--;
    }
    print(t->r,++u);
}
void main ()
{   node *tree=NULL;
	node *good=NULL;
    int n,m; 
    int s,p; 
    cout<<"kol-vo el-v v 1 ";
    cin>>n; 

    for (int i=0;i<n;++i)
    {
    cout<<"vvedite chislo ";
    cin>>s;
   
    push(s,tree); 
    }
	cout<<"kol-vo el-v v 2 ";
	cin>>m;
	for (int i=0;i<m;++i)
    {
    cout<<"vvedite chislo ";
    cin>>s;
   
    push(s,good); 
    }
    cout<<"derevo1:"<<endl;
    print(tree,0);
	cout<<"derevo2:"<<endl;
	print(good,0);
    system("pause");
}
Laurensii вне форума Ответить с цитированием
Старый 24.12.2012, 01:41   #2
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Вы ее написали.
Smogg вне форума Ответить с цитированием
Старый 24.12.2012, 02:55   #3
Laurensii
 
Регистрация: 24.12.2012
Сообщений: 3
По умолчанию

Дерево написал довольно быстро а вот функцию никак
Laurensii вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу, которая проверяет(Pascal) xhatex Паскаль, Turbo Pascal, PascalABC.NET 1 23.11.2012 00:57
Написать функцию, которая проверяет, что в строке, переданной в качестве аргумента, соблюдается баланс точек и заглавных букв morsekkk JavaScript, Ajax 8 06.11.2012 20:32
Написать программу, которая проверяет формулы на эквивалентность oksana baybuza Общие вопросы C/C++ 3 18.02.2010 19:38