uddeshyakumar.kumar
BAN USER//this is for two elements only;
#include<iostream>
#include<string.h>
using namespace std;
struct node
{
node *l,*r;int data;
}*root;
void show(node *);node *insert(node *,int );int n;
void search(node *,node *,int ,int);
void search(node *sr,node *sr1,int d,int e)
{
node *p;p=sr;node *p1;p1=sr1;
while(sr!=NULL && sr1!=NULL)
{
if(sr->data==d || sr1->data==e)
{
cout<<"found\n";cout<<endl<<p->data<<" "<<p1->data<<endl;break;
}
p=sr;p1=sr1;cout<<endl<<p->data<<" "<<p1->data<<endl;
if(p->data!=p1->data) break;
if(sr->data>d) sr=sr->l;
else sr=sr->r;
if(sr1->data>e) sr1=sr1->l;
else sr1=sr1->r;
}
sr=root;node *g;g=sr;cout<<endl<<p->data<<endl;
while(sr!=NULL)
{
if(sr->data==p->data) {cout<<"again found\n";cout<<endl<<g->data<<endl;return;}
g=sr;
if(sr->data>p->data) sr=sr->l;
else sr=sr->r;
}
}
node *insert(node *sr,int a)
{
if(sr==NULL)
{
sr=new node;sr->data=a;sr->l=sr->r=NULL;return sr;
}
else if(sr->data<a)
sr->r=insert(sr->r,a);
else if(sr->data>a)
sr->l=insert(sr->l,a);
else return sr;
}
void show(node *sr)
{
if(sr!=NULL)
{
show(sr->l);cout<<sr->data<<" ";show(sr->r);
}}
int main()
{
root=NULL;int num;cout<<"enter how many\n";cin>>n;
cout<<"enter which one\n";
for(int i=0;i<n;i++)
{
cin>>num;root=insert(root,num);
}
cout<<endl;show(root);cout<<endl;int x,y;cout<<"enter the 1st searched element\n";
cin>>x;cout<<"enter the 2nd searche element\n";cin>>y;search(root,root,x,y);
return 0;
}
//this is for two elements only;
#include<iostream>
#include<string.h>
using namespace std;
struct node
{
node *l,*r;int data;
}*root;
void show(node *);node *insert(node *,int );int n;
void search(node *,node *,int ,int);
void search(node *sr,node *sr1,int d,int e)
{
node *p;p=sr;node *p1;p1=sr1;
while(sr!=NULL && sr1!=NULL)
{
if(sr->data==d || sr1->data==e)
{
cout<<"found\n";cout<<endl<<p->data<<" "<<p1->data<<endl;break;
}
p=sr;p1=sr1;cout<<endl<<p->data<<" "<<p1->data<<endl;
if(p->data!=p1->data) break;
if(sr->data>d) sr=sr->l;
else sr=sr->r;
if(sr1->data>e) sr1=sr1->l;
else sr1=sr1->r;
}
sr=root;node *g;g=sr;cout<<endl<<p->data<<endl;
while(sr!=NULL)
{
if(sr->data==p->data) {cout<<"again found\n";cout<<endl<<g->data<<endl;return;}
g=sr;
if(sr->data>p->data) sr=sr->l;
else sr=sr->r;
}
}
node *insert(node *sr,int a)
{
if(sr==NULL)
{
sr=new node;sr->data=a;sr->l=sr->r=NULL;return sr;
}
else if(sr->data<a)
sr->r=insert(sr->r,a);
else if(sr->data>a)
sr->l=insert(sr->l,a);
else return sr;
}
void show(node *sr)
{
if(sr!=NULL)
{
show(sr->l);cout<<sr->data<<" ";show(sr->r);
}}
int main()
{
root=NULL;int num;cout<<"enter how many\n";cin>>n;
cout<<"enter which one\n";
for(int i=0;i<n;i++)
{
cin>>num;root=insert(root,num);
}
cout<<endl;show(root);cout<<endl;int x,y;cout<<"enter the 1st searched element\n";
cin>>x;cout<<"enter the 2nd searche element\n";cin>>y;search(root,root,x,y);
return 0;
}
//this is for two elements only;
#include<iostream>
#include<string.h>
using namespace std;
struct node
{
node *l,*r;int data;
}*root;
void show(node *);node *insert(node *,int );int n;
void search(node *,node *,int ,int);
void search(node *sr,node *sr1,int d,int e)
{
node *p;p=sr;node *p1;p1=sr1;
while(sr!=NULL && sr1!=NULL)
{
if(sr->data==d || sr1->data==e)
{
cout<<"found\n";cout<<endl<<p->data<<" "<<p1->data<<endl;break;
}
p=sr;p1=sr1;cout<<endl<<p->data<<" "<<p1->data<<endl;
if(p->data!=p1->data) break;
if(sr->data>d) sr=sr->l;
else sr=sr->r;
if(sr1->data>e) sr1=sr1->l;
else sr1=sr1->r;
}
sr=root;node *g;g=sr;cout<<endl<<p->data<<endl;
while(sr!=NULL)
{
if(sr->data==p->data) {cout<<"again found\n";cout<<endl<<g->data<<endl;return;}
g=sr;
if(sr->data>p->data) sr=sr->l;
else sr=sr->r;
}
}
node *insert(node *sr,int a)
{
if(sr==NULL)
{
sr=new node;sr->data=a;sr->l=sr->r=NULL;return sr;
}
else if(sr->data<a)
sr->r=insert(sr->r,a);
else if(sr->data>a)
sr->l=insert(sr->l,a);
else return sr;
}
void show(node *sr)
{
if(sr!=NULL)
{
show(sr->l);cout<<sr->data<<" ";show(sr->r);
}}
int main()
{
root=NULL;int num;cout<<"enter how many\n";cin>>n;
cout<<"enter which one\n";
for(int i=0;i<n;i++)
{
cin>>num;root=insert(root,num);
}
cout<<endl;show(root);cout<<endl;int x,y;cout<<"enter the 1st searched element\n";
cin>>x;cout<<"enter the 2nd searche element\n";cin>>y;search(root,root,x,y);
return 0;
}
clarify the question
awesome answer.how do you think like that.
- uddeshyakumar.kumar February 12, 2012if two threads want to access same data at a time then we will apply semaphores for that.
- uddeshyakumar.kumar February 19, 2012