Categories
- 4th semester (27)
- 5th semester (3)
- ADA (13)
- Assembly Level Language (12)
- BE (45)
- C Language Programming (5)
- C language (20)
- C++ Language (5)
- CCP Lab programing (3)
- Computer Programming Lab (3)
- DAA Lab Programming (13)
- Data Structure and C++ laboratory Program (6)
- Data Structure and C++ labotary Program (5)
- Design and Analysis of algorithm (14)
- First Year (5)
- MASM (12)
- Microprocessor (12)
- Microprocessor lab program (12)
- System Software & OS Laboratory (5)
- Unix program (4)
- bachelor of engineering (30)
- basic (1)
- basic mathematics (2)
- beginners (10)
- c++ program (9)
- calculations (7)
- computer science (30)
- downloadable (5)
- engineering syllabus (4)
- simple program (6)
Trend Posts
Blogger news
Author
Followers
Showing posts with label Binary Tree. Show all posts
Showing posts with label Binary Tree. Show all posts
Thursday, October 31, 2013
Write a C++ program to create a class called BIN_TREE(Binary Tree) with member function to perform inorder,preorder and postorder traversals.Create a BIN_TREE object and demonstrate the traversals
-----
#include<iostream.h>
#include<stdlib.h>
#include<conio.h>
struct node
{
int info;
node *llink;
node *rlink;
};
class tree
{
node *root;
public:
tree()
{
root=NULL;
}
void inorder(node *);
void preorder(node *);
void postorder(node *);
void display(int);
void create(int);
};
void tree::display(int choice)
{
switch(choice)
{
case 2:
if(root==NULL)
cout<<"tree is empty"<<endl;
else
{
cout<<"preorder traversal is "<<endl;
preorder(root);
}
break;
case 3:
if(root==NULL)
cout<<"tree is empty"<<endl;
else
{
cout<<"inorder traversal is"<<endl;
inorder(root);
}
break;
case 4:
if(root==NULL)
cout<<"tree is empty"<<endl;
else
{
cout<<"Postorder traversal is"<<endl;
postorder(root);
}
break;
}
}
void tree::inorder(node *root)
{
if(root!=NULL)
{
inorder(root->llink);
cout<<root->info<<endl;
inorder(root->rlink);
}
}
void tree::preorder(node *root)
{
if(root!=NULL)
{
cout<<root->info<<endl;
preorder(root->llink);
preorder(root->rlink);
}
}
void tree::postorder(node *root)
{
if(root!=NULL)
{
postorder(root->llink);
postorder(root->rlink);
cout<<root->info<<endl;
}
}
void tree::create(int item)
{
node *temp,*cur,*prev;
temp=new node;
temp->info=item;
temp->llink=NULL;
temp->rlink=NULL;
if(root==NULL)
{
root=temp;
return;
}
cur=root;
prev=NULL;
while(cur!=NULL)
{
prev=cur;
if(item<cur->info)
cur=cur->llink;
else
cur=cur->rlink;
}
if(item<prev->info)
prev->llink=temp;
else
prev->rlink=temp;
}
void main()
{
tree ob;
int item,choice;
clrscr();
cout<<"1:insert 2:preoder"<<endl;
cout<<"3:inoder 4:postorder"<<endl;
cout<<"5: exit \n";
for(;;)
{
cout<<"enter the choice \n";
cin>>choice;
switch(choice)
{
case 1:
cout<<"enter the item";
cin>>item;
ob.create(item);
break;
case 2:
case 3:
case 4:
ob.display(choice);
break;
default:exit(0);
}
}
}
End programs
Subscribe to:
Posts (Atom)

