Binary Tree Traversal





SOURCE CODE



#include”iostream.h”
#include”conio.h”
#include”stdio.h”
#include <>

struct node
{
int data;
node *left;
node *right;
};

node *tree=NULL;
node *insert(node *tree,int ele);
void preorder(node *tree);
void inorder(node *tree);
void postorder(node *tree);

void main()
{
clrscr();
int ch,ele;
do
{
clrscr();
cout < < "\n\t 1.INSERT A NODE IN BINARY TREE "; cout < < "\n\t 2.PREORDER TRAVERSAL"; cout < < "\n\t 3.INORDER TRAVERSAL"; cout < < "\n\t 4.POSTORDER TRAVERSAL "; cout < < "\n\t 5.EXIT"; cout < < "\n\n\t ENTER YOUR CHOICE: "; cin > > ch;

switch(ch)
{
case 1:
cout < < "\t ENTER THE ELEMENT: "; cin > > ele;
tree=insert(tree,ele);
break;

case 2:
cout < < "\n\t PREORDER TRAVERSAL \n"; preorder(tree); break; case 3: cout < < "\n\t INORDER TRAVERSAL \n"; inorder(tree); break; case 4: cout < < "\n\t POSTORDER TRAVERSAL \n"; postorder(tree); break; case 5: exit(0); } }while(ch!=5); } node *insert(node *tree,int ele) { static count=1; if(tree==NULL) { tree=new node; tree- > left=tree- > right=NULL;
tree- > data=ele;
count++;
}
else
{
if(count%2==0)
tree- > left=insert(tree- > left,ele);
else
tree- > right=insert(tree- > right,ele);
}
return (tree);
}

void preorder(node *tree)
{
if(tree!=NULL)
{
cout < < "\n " < <> data;
preorder(tree- > left);
preorder(tree- > right);
getch();
}
}

void inorder(node *tree)
{
if(tree!=NULL)
{
inorder(tree- > left);
cout < < "\n " < <> data;
inorder(tree- > right);
getch();
}
}

void postorder(node *tree)
{
if(tree!=NULL)
{
postorder(tree- > left);
postorder(tree- > right);
cout < < "\n " < <> data;
getch();
}
}














OUTPUT:
1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 1
ENTER THE ELEMENT: 4

1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 1
ENTER THE ELEMENT: 3

1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 1
ENTER THE ELEMENT: 5

1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 2
PREORDER TRAVERSAL

4
3
5

1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 3
INORDER TRAVERSAL
3
4
5



1.INSERT A NODE IN BINARY TREE
2.PREORDER TRAVERSAL
3.INORDER TRAVERSAL
4.POSTORDER TRAVERSAL
5.EXIT
ENTER YOUR CHOICE: 4
POSTORDER TRAVERSAL
3
5
4