Binary Tree Traversal

Reply

Join Date: Nov 2005
Posts: 3
Reputation: Chinjoo is an unknown quantity at this point 
Solved Threads: 0
Chinjoo Chinjoo is offline Offline
Newbie Poster

Binary Tree Traversal

 
0
  #1
Nov 13th, 2005
#include<stdio.h>
#include<conio.h>
struct node
{
int data;
struct node *right, *left;
}*root,*p,*q;

struct node *make(int y)
{
struct node *newnode;
newnode=(struct node *)malloc(sizeof(struct node));
newnode->data=y;
newnode->right=newnode->left=NULL;
return(newnode);
}

void left(struct node *r,int x)
{
if(r->left!=NULL)
printf("\n Invalid !");
else
r->left=make(x);
}

void right(struct node *r,int x)
{
if(r->right!=NULL)
printf("\n Invalid !");
else
r->right=make(x);
}

void inorder(struct node *r)
{
if(r!=NULL)
{
inorder(r->left);
printf("\t %d",r->data);
inorder(r->right);
}
}

void preorder(struct node *r)
{
if(r!=NULL)
{
printf("\t %d",r->data);
preorder(r->left);
preorder(r->right);
}
}

void postorder(struct node *r)
{
if(r!=NULL)
{
postorder(r->left);
postorder(r->right);
printf("\t %d",r->data);
}
}

void main()
{
int no;
int choice;
clrscr();
printf("\n Enter the root:");
scanf("%d",& no);
root=make(no);
p=root;
while(1)
{
printf("\n Enter another number:");
scanf("%d",& no);
if(no==-1)
break;
p=root;
q=root;
while(no!=p->data && q!=NULL)
{
p=q;
if(no<p->data)
q=p->left;
else
q=p->right;
}
if(no<p->data)
{
printf("\n Left branch of %d is %d",p->data,no);
left(p,no);
}
else
{
right(p,no);
printf("\n Right Branch of %d is %d",p->data,no);
}
}
while(1)
{
printf("\n 1.Inorder Traversal \n 2.Preorder Traversal \n 3.Postorder Traversal \n 4.Exit");
printf("\n Enter choice:");
scanf("%d",&choice);
switch(choice)
{
case 1 :inorder(root);
break;
case 2 :preorder(root);
break;
case 3 :postorder(root);
break;
case 4 :exit(0);
default:printf("Error ! Invalid Choice ");
break;
}
getch();
}

}
Reply With Quote Quick reply to this message  
Join Date: Jun 2005
Posts: 1,496
Reputation: WolfPack has a spectacular aura about WolfPack has a spectacular aura about WolfPack has a spectacular aura about 
Solved Threads: 104
Moderator
WolfPack's Avatar
WolfPack WolfPack is offline Offline
Mentally Challenged Mod.

Re: Binary Tree Traversal

 
0
  #2
Nov 13th, 2005
Any questions? or is this an example for an implementation of a Binary Tree Traversal?
Reply With Quote Quick reply to this message  
Join Date: Nov 2005
Posts: 3
Reputation: Chinjoo is an unknown quantity at this point 
Solved Threads: 0
Chinjoo Chinjoo is offline Offline
Newbie Poster

Re: Binary Tree Traversal

 
0
  #3
Nov 13th, 2005
Dude, This is just an example of traversal. The program can be extended to many other applications as well !
Reply With Quote Quick reply to this message  
Join Date: Aug 2005
Posts: 598
Reputation: SpS is on a distinguished road 
Solved Threads: 32
SpS's Avatar
SpS SpS is offline Offline
Posting Pro

Re: Binary Tree Traversal

 
0
  #4
Nov 13th, 2005
Originally Posted by Chinjoo
Dude, This is just an example of traversal. The program can be extended to many other applications as well !
There is a tutorial section...you can post your tutorial with detailed explanation there(if approved)...or better add to code snippet section(idon't think it requires approval)
Reply With Quote Quick reply to this message  
Join Date: Sep 2004
Posts: 7,579
Reputation: Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute Narue has a reputation beyond repute 
Solved Threads: 709
Team Colleague
Narue's Avatar
Narue Narue is offline Offline
Code Goddess

Re: Binary Tree Traversal

 
0
  #5
Nov 13th, 2005
> Dude, This is just an example of traversal.
There are plenty of better examples (much better) out there already. For example. Thanks, by the way. If not for your post I'm not sure how long it would have been before I noticed that my coloring was messed up for string and character literals.
I'm here to prove you wrong.
Reply With Quote Quick reply to this message  
Join Date: Nov 2005
Posts: 74
Reputation: Cudmore is an unknown quantity at this point 
Solved Threads: 5
Cudmore's Avatar
Cudmore Cudmore is offline Offline
Junior Poster in Training

Re: Binary Tree Traversal

 
0
  #6
Nov 13th, 2005
Originally Posted by Narue
There are plenty of better examples (much better) out there already. For example.
Cool tutorial! :cheesy: I read it all (believe it or not) and now I'm interested in this type of classification and currently writing my first binary search tree app.. And, thus, I'll probably be looking for help so may be contacting you :o Umm, but me being a n00b I have several stupid questions (though I'll keep them to myself for now because I haven't yet had a chance to play around with this and see if I can answer some of them independently)... So forgive me in advance YAY tree!!

...

*thrashes keyboard in an attempt to write a program*
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC