SlideShare une entreprise Scribd logo
1  sur  113
#include<stdio.h>                             printf("n***MENU***");
#include<conio.h>                             printf("n1.CREATEn2.PRE-ORDER");
#include<alloc.h>                             printf("n3.IN-ORDERn4.POST-
void create(struct node *);                   ORDERn5.EXIT");
void in_order();                              printf("nPLease Enter the Choice...");
void pre_order();                             scanf("%d",&ch);
void post_order();                            switch(ch)
struct node                                   {
{                                                    case 1:root=NULL;
     int data;                                           create(root);break;
     struct node *left,*right;                       case 2:pre_order();break;
}*root=NULL,*New,*temp,*p,*stack[20];                case 3:in_order();break;
int top=-1,flag[20],item;                            case 4:post_order();break;
char c;                                              case 5:exit(0);
                                                     default: printf("nInvalid choice...");
void main()                                   }
{                                           }while(ch!=5);
   int ch,e;                                getch();
   clrscr();                            }
   do
   {
void create(struct node *t) t = NULL                New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)//Is It first node?
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)//Is It first node?
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)//Is It first node?
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);                        New
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof
     (struct node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);           100
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100     New
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        New
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("nDo you want add Another(y/n)...");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        New
     }                                          }                                     root
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);            y
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        New
     }                                          }                                     root
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        New
     }                                          }                                     root
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t) t = 100                 New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ",t->data);            if(c=='l' || c=='L‘)
     scanf("%c",&c);          l                       s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t) t = NULL                New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);           50
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100     root
     }                                          }                                  s
  }                                            }
  else                                                                     50      New
{ New=(struct node *) malloc (sizeof
     (struct node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                     50         New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                     50         New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50       New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);            y
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t) t = 100                 New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);          r                       s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = 100              New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t) t = NULL                New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);           60
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100     root
     }                                          }                                  s
  }                                            }
  else                                                                50       60    New
{ New=(struct node *) malloc (sizeof
     (struct node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50       60       New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                               50        60       New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50       60          New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);            n
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }                                     s
  }                                            }
  else                                                                50       60          New
{ New=(struct node *) malloc (sizeof (struct
     node));
void create(struct node *t)    t = NULL             New->left=New->right=NULL;
{                                                   printf("nEnter the Element...");
  char ch;                                          scanf("%d",&New->data);
  struct node *s;                                   if(root==NULL)
  if(t!=NULL)                                       root=New;
  {                                                 else
     printf("nWhether you want to insert at        {
     Left or Rigth( L/R) of %d ", t->data);           if(c=='l' || c=='L‘)
     scanf("%c",&c);                                  s->left=New;
     if(c=='l'|| c=='L‘)                            else
     {                                              s->right=New;
       s=t; create(t->left);                        }
     }                                           printf("Do you want add Another (y/n)");
     else                                        scanf("%c",&ch);
     {                                           if(ch=='y')
       s=t; create(t->right);                    create(root);             100        root
     }                                          }
  }                                            }
  else                                                                50       60
{ New=(struct node *) malloc (sizeof (struct
     node));
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                                100             root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                 50              60
   do
   {
      while(p!=NULL)
     {                                                             4
          stack[++top]=p;                                          3
          p=p->left;                                               2
   }                                                               1
   if(top!=0)                                                      0
   {                                                                           top = -1        finish = 0
          p=stack[top];
          top--;
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                              100           root
   stack[++top]=NULL;                                                                         p
   p=root;
   printf("nInorder Traversal is...n");                                 50          60
   do
   {
      while(p!=NULL)
     {                                                           4
          stack[++top]=p;                                        3
          p=p->left;                                             2
   }                                                             1
   if(top!=0)                                               top 0             NULL
   {                                                                                       finish = 0
          p=stack[top];
          top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;                                                                          p
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                       p          50          60
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                       p          50          60
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {
           p=stack[top];                                                                    finish = 0
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                         top2               50
     }                                                            1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                         top2               50
     }                                                            1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];
           top--;
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                 50          60
   do                                                       p     NULL
   {
      while(p!=NULL)
     {                                                           4
          stack[++top]=p;                                        3
          p=p->left;                                         top2               50
     }                                                           1              100
     if(top!=0)                                                  0             NULL
    {                                                                                      finish = 0
          p=stack[top];
          top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                        p         50          60
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                         p    NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                         p    NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                         p    NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              100
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                 50          60
   do                                                        p    NULL
   {
      while(p!=NULL)
     {                                                           4
          stack[++top]=p;                                        3
          p=p->left;                                             2
     }                                                       top1              100
     if(top!=0)                                                  0             NULL
    {                                                                                      finish = 0
          p=stack[top];                          50         100
          top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;                                                                          p
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60          p
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60          p
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60          p
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                         p    NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              60
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                         p    NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                        top1              60
     if(top!=0)                                                   0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                 50          60
   do                                                        p    NULL
   {
      while(p!=NULL)
     {                                                           4
          stack[++top]=p;                                        3
          p=p->left;                                             2
     }                                                       top1              60
     if(top!=0)                                                  0             NULL
    {                                                                                      finish = 0
          p=stack[top];                          50         100
          top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60          p
   do
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100       60
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100      60
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 0
           p=stack[top];                          50         100       60
           top--;
void in_order()                                             printf("%d ",p->data);
{                                                           p=p->right;
   int finish=0;                                      }
   if(root==NULL)                                     else
   {                                                  finish=1;
          printf("nTree is Empty...");return;       }while(finish==0);
   }                                             }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                 50          60
   do                                                       p     NULL
   {
      while(p!=NULL)
     {                                                           4
          stack[++top]=p;                                        3
          p=p->left;                                             2
     }                                                           1
     if(top!=0)                                              top0             NULL
    {                                                                                      finish = 0
          p=stack[top];                          50         100       60
          top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 1
           p=stack[top];                          50         100       60
           top--;
void in_order()                                              printf("%d ",p->data);
{                                                            p=p->right;
   int finish=0;                                       }
   if(root==NULL)                                      else
   {                                                   finish=1;
           printf("nTree is Empty...");return;       }while(finish==0);
   }                                              }                              100           root
   stack[++top]=NULL;
   p=root;
   printf("nInorder Traversal is...n");                                  50          60
   do                                                        p     NULL
   {
      while(p!=NULL)
     {                                                            4
           stack[++top]=p;                                        3
           p=p->left;                                             2
     }                                                            1
     if(top!=0)                                               top0             NULL
    {                                                                                       finish = 1
           p=stack[top];                          50         100      60
           top--;
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                     100            root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");       50              60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                     4
     stack[++top]=p->right;                 3
     if(p->left!=NULL)                      2
     p=p->left;                             1
     else                                   0
     p=stack[top--];                                 top = -1        finish = 0
  }
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                       100        root
  stack[++top]=NULL;                                                  p
  p=root;
  printf("nPreorder Traversal is...n");           50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                         4
     stack[++top]=p->right;                     3
     if(p->left!=NULL)                          2
     p=p->left;                                 1
     else                                   top0        NULL
     p=stack[top--];
  }
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                       100        root
  stack[++top]=NULL;                                                  p
  p=root;
  printf("nPreorder Traversal is...n");           50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                         4
     stack[++top]=p->right;                     3
     if(p->left!=NULL)                          2
     p=p->left;                                 1
     else                                   top0        NULL
     p=stack[top--];
  }
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;                                                        p
  p=root;
  printf("nPreorder Traversal is...n");                 50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;                                                        p
  p=root;
  printf("nPreorder Traversal is...n");                 50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;                                                        p
  p=root;
  printf("nPreorder Traversal is...n");                 50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1         60
     else                                             0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;                                                        p
  p=root;
  printf("nPreorder Traversal is...n");                 50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1         60
     else                                             0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");           p     50          60
  while(p!=NULL)
  {
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1         60
     else                                             0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");           p     50          60
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1         60
     else                                             0        NULL
     p=stack[top--];
  }                                         100
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                              100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");              p   50          60
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1          60
     else                                             0         NULL
     p=stack[top--];
  }                                         100   50
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                              100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");              p   50          60
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                   top1          60
     else                                             0         NULL
     p=stack[top--];
  }                                         100   50
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                 50          60          p
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0        NULL
     p=stack[top--];
  }                                         100   50
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                             100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                 50          60          p
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0        NULL
     p=stack[top--];
  }                                         100   50
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                              100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                  50          60          p
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0         NULL
     p=stack[top--];
  }                                         100   50      60
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                              100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                  50          60          p
while(p!=NULL)
{
     printf("%d ",p->data);
     if(p->right!=NULL)                               4
     stack[++top]=p->right;                           3
     if(p->left!=NULL)                                2
     p=p->left;                                       1
     else                                         top0         NULL
     p=stack[top--];
  }                                         100   50      60
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                                100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                   50           60
while(p!=NULL)                                    p    NULL
{
     printf("%d ",p->data);
     if(p->right!=NULL)                                4
     stack[++top]=p->right;                            3
     if(p->left!=NULL)                                 2
     p=p->left;                                        1
     else                                              0
     p=stack[top--];                                             top = -1
  }                                         100   50       60
}
void pre_order()
{
  if(root==NULL)
  {
     printf("nTree is Empty...");
     return;
  }                                                                100        root
  stack[++top]=NULL;
  p=root;
  printf("nPreorder Traversal is...n");                   50           60
while(p!=NULL)                                    p    NULL
{
     printf("%d ",p->data);
     if(p->right!=NULL)                                4
     stack[++top]=p->right;                            3
     if(p->left!=NULL)                                 2
     p=p->left;                                        1
     else                                              0
     p=stack[top--];                                             top = -1
  }                                         100   50       60
}
void post_order()
{
  int f;
  if(root==NULL)
  {
    printf("nTree is Empty...");
    return;                                            100          root
  }

 stack[++top]=NULL;                              50            60
 p=root;

 printf("nPostorder Traversal is...n");
                                            4              4
                                            3              3
                                            2              2
                                            1              1
                                            0              0
                                                top = -1
void post_order()
{
  int f;
  if(root==NULL)
  {
    printf("nTree is Empty...");
    return;                                           100         root
  }                                                                p

 stack[++top]=NULL;                             50          60
 p=root;

 printf("nPostorder Traversal is...n");
                                            4          4
                                            3          3
                                            2          2
                                            1          1
                                            0   top    0         NULL
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree
Binary tree

Contenu connexe

Tendances (20)

Double linked list
Double linked listDouble linked list
Double linked list
 
Datastructures asignment
Datastructures asignmentDatastructures asignment
Datastructures asignment
 
C lab manaual
C lab manaualC lab manaual
C lab manaual
 
Circular linked list
Circular linked listCircular linked list
Circular linked list
 
Cpds lab
Cpds labCpds lab
Cpds lab
 
Single linked list
Single linked listSingle linked list
Single linked list
 
week-16x
week-16xweek-16x
week-16x
 
Numerical Methods in C
Numerical Methods in CNumerical Methods in C
Numerical Methods in C
 
C Prog. - Strings (Updated)
C Prog. - Strings (Updated)C Prog. - Strings (Updated)
C Prog. - Strings (Updated)
 
Pnno
PnnoPnno
Pnno
 
All important c programby makhan kumbhkar
All important c programby makhan kumbhkarAll important c programby makhan kumbhkar
All important c programby makhan kumbhkar
 
C basics
C basicsC basics
C basics
 
DAA Lab File C Programs
DAA Lab File C ProgramsDAA Lab File C Programs
DAA Lab File C Programs
 
C Prog - Array
C Prog - ArrayC Prog - Array
C Prog - Array
 
design and analysis of algorithm Lab files
design and analysis of algorithm Lab filesdesign and analysis of algorithm Lab files
design and analysis of algorithm Lab files
 
c-programming-using-pointers
c-programming-using-pointersc-programming-using-pointers
c-programming-using-pointers
 
C programming array & shorting
C  programming array & shortingC  programming array & shorting
C programming array & shorting
 
C programms
C programmsC programms
C programms
 
C Prog - Strings
C Prog - StringsC Prog - Strings
C Prog - Strings
 
C PROGRAMS
C PROGRAMSC PROGRAMS
C PROGRAMS
 

En vedette

Aj old presentation - pssc research-pt_
Aj   old presentation - pssc research-pt_Aj   old presentation - pssc research-pt_
Aj old presentation - pssc research-pt_ajackson12
 
The Paleo Diet
The Paleo Diet The Paleo Diet
The Paleo Diet Hopey78
 
How To Listen To Your Customers
How To Listen To Your CustomersHow To Listen To Your Customers
How To Listen To Your CustomersCharlesThornhill
 
Computer
ComputerComputer
ComputerIIFP
 
эта книга посвящается всем женщинам
эта книга посвящается всем женщинамэта книга посвящается всем женщинам
эта книга посвящается всем женщинамЕлена Семенец
 
S.B.C Outfitters
S.B.C OutfittersS.B.C Outfitters
S.B.C Outfitterseperiod
 
How to make a stuffed frog
How to make a stuffed frogHow to make a stuffed frog
How to make a stuffed froglyra_sch
 
การจัดการต้รทุน อุตสาหกรรมผลิต
การจัดการต้รทุน อุตสาหกรรมผลิตการจัดการต้รทุน อุตสาหกรรมผลิต
การจัดการต้รทุน อุตสาหกรรมผลิตMobile_Clinic
 
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...ZX7
 
Impact library adelaide q3 2012
Impact library adelaide q3 2012Impact library adelaide q3 2012
Impact library adelaide q3 2012Guy Turner
 
11 project-online20library20management20system-110809063139-phpapp01(2)
11 project-online20library20management20system-110809063139-phpapp01(2)11 project-online20library20management20system-110809063139-phpapp01(2)
11 project-online20library20management20system-110809063139-phpapp01(2)Roopal Shrivastava
 
第8章 运行时的存储管理
第8章 运行时的存储管理第8章 运行时的存储管理
第8章 运行时的存储管理tjpucompiler
 
Photoshoot temporada 3
Photoshoot temporada 3Photoshoot temporada 3
Photoshoot temporada 3pll-latam
 
Far More Could Be Done To Stop The Deadly Bacteria C
Far More Could Be Done To Stop The Deadly Bacteria CFar More Could Be Done To Stop The Deadly Bacteria C
Far More Could Be Done To Stop The Deadly Bacteria Cesalozzo
 
Implementation Of Integrated Project Management And Resource Management System
Implementation Of Integrated Project Management And Resource Management SystemImplementation Of Integrated Project Management And Resource Management System
Implementation Of Integrated Project Management And Resource Management Systemkdelcol
 

En vedette (20)

Aj old presentation - pssc research-pt_
Aj   old presentation - pssc research-pt_Aj   old presentation - pssc research-pt_
Aj old presentation - pssc research-pt_
 
The Paleo Diet
The Paleo Diet The Paleo Diet
The Paleo Diet
 
SMBtweet
SMBtweetSMBtweet
SMBtweet
 
How To Listen To Your Customers
How To Listen To Your CustomersHow To Listen To Your Customers
How To Listen To Your Customers
 
Pragmatics
PragmaticsPragmatics
Pragmatics
 
Kevin g nice
Kevin g niceKevin g nice
Kevin g nice
 
Computer
ComputerComputer
Computer
 
эта книга посвящается всем женщинам
эта книга посвящается всем женщинамэта книга посвящается всем женщинам
эта книга посвящается всем женщинам
 
S.B.C Outfitters
S.B.C OutfittersS.B.C Outfitters
S.B.C Outfitters
 
How to make a stuffed frog
How to make a stuffed frogHow to make a stuffed frog
How to make a stuffed frog
 
Pup
PupPup
Pup
 
модель
модельмодель
модель
 
การจัดการต้รทุน อุตสาหกรรมผลิต
การจัดการต้รทุน อุตสาหกรรมผลิตการจัดการต้รทุน อุตสาหกรรมผลิต
การจัดการต้รทุน อุตสาหกรรมผลิต
 
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...
Biofuels: A Guide for Coordinating a Fryer to Fuel Collection Program in Sant...
 
Impact library adelaide q3 2012
Impact library adelaide q3 2012Impact library adelaide q3 2012
Impact library adelaide q3 2012
 
11 project-online20library20management20system-110809063139-phpapp01(2)
11 project-online20library20management20system-110809063139-phpapp01(2)11 project-online20library20management20system-110809063139-phpapp01(2)
11 project-online20library20management20system-110809063139-phpapp01(2)
 
第8章 运行时的存储管理
第8章 运行时的存储管理第8章 运行时的存储管理
第8章 运行时的存储管理
 
Photoshoot temporada 3
Photoshoot temporada 3Photoshoot temporada 3
Photoshoot temporada 3
 
Far More Could Be Done To Stop The Deadly Bacteria C
Far More Could Be Done To Stop The Deadly Bacteria CFar More Could Be Done To Stop The Deadly Bacteria C
Far More Could Be Done To Stop The Deadly Bacteria C
 
Implementation Of Integrated Project Management And Resource Management System
Implementation Of Integrated Project Management And Resource Management SystemImplementation Of Integrated Project Management And Resource Management System
Implementation Of Integrated Project Management And Resource Management System
 

Similaire à Binary tree

Similaire à Binary tree (19)

C program to implement linked list using array abstract data type
C program to implement linked list using array abstract data typeC program to implement linked list using array abstract data type
C program to implement linked list using array abstract data type
 
Solutionsfor co2 C Programs for data structures
Solutionsfor co2 C Programs for data structuresSolutionsfor co2 C Programs for data structures
Solutionsfor co2 C Programs for data structures
 
week-14x
week-14xweek-14x
week-14x
 
Daapracticals 111105084852-phpapp02
Daapracticals 111105084852-phpapp02Daapracticals 111105084852-phpapp02
Daapracticals 111105084852-phpapp02
 
My C proggram is having trouble in the switch in main. Also the a co.pdf
My C proggram is having trouble in the switch in main. Also the a co.pdfMy C proggram is having trouble in the switch in main. Also the a co.pdf
My C proggram is having trouble in the switch in main. Also the a co.pdf
 
VTU Data Structures Lab Manual
VTU Data Structures Lab ManualVTU Data Structures Lab Manual
VTU Data Structures Lab Manual
 
Ds
DsDs
Ds
 
Data Structure in C Programming Language
Data Structure in C Programming LanguageData Structure in C Programming Language
Data Structure in C Programming Language
 
C program
C programC program
C program
 
Basic c programs updated on 31.8.2020
Basic c programs updated on 31.8.2020Basic c programs updated on 31.8.2020
Basic c programs updated on 31.8.2020
 
Arrays
ArraysArrays
Arrays
 
week-18x
week-18xweek-18x
week-18x
 
week-17x
week-17xweek-17x
week-17x
 
One dimensional operation of Array in C- language
One dimensional operation of Array in C- language One dimensional operation of Array in C- language
One dimensional operation of Array in C- language
 
Ada file
Ada fileAda file
Ada file
 
Polynomial addition
Polynomial additionPolynomial addition
Polynomial addition
 
Chapter 8 c solution
Chapter 8 c solutionChapter 8 c solution
Chapter 8 c solution
 
SaraPIC
SaraPICSaraPIC
SaraPIC
 
Singly linked list.pptx
Singly linked list.pptxSingly linked list.pptx
Singly linked list.pptx
 

Dernier

social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 

Dernier (20)

social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 

Binary tree

  • 1.
  • 2. #include<stdio.h> printf("n***MENU***"); #include<conio.h> printf("n1.CREATEn2.PRE-ORDER"); #include<alloc.h> printf("n3.IN-ORDERn4.POST- void create(struct node *); ORDERn5.EXIT"); void in_order(); printf("nPLease Enter the Choice..."); void pre_order(); scanf("%d",&ch); void post_order(); switch(ch) struct node { { case 1:root=NULL; int data; create(root);break; struct node *left,*right; case 2:pre_order();break; }*root=NULL,*New,*temp,*p,*stack[20]; case 3:in_order();break; int top=-1,flag[20],item; case 4:post_order();break; char c; case 5:exit(0); default: printf("nInvalid choice..."); void main() } { }while(ch!=5); int ch,e; getch(); clrscr(); } do {
  • 3. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL)//Is It first node? if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 4. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL)//Is It first node? if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 5. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL)//Is It first node? if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); New } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 6. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); 100 struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 New } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 7. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 New } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 8. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("nDo you want add Another(y/n)..."); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 New } } root } } else { New=(struct node *) malloc (sizeof (struct node));
  • 9. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); y { if(ch=='y') s=t; create(t->right); create(root); 100 New } } root } } else { New=(struct node *) malloc (sizeof (struct node));
  • 10. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 New } } root } } else { New=(struct node *) malloc (sizeof (struct node));
  • 11. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 12. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 13. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ",t->data); if(c=='l' || c=='L‘) scanf("%c",&c); l s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 14. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else { New=(struct node *) malloc (sizeof (struct node));
  • 15. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else { New=(struct node *) malloc (sizeof (struct node));
  • 16. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else { New=(struct node *) malloc (sizeof (struct node));
  • 17. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else { New=(struct node *) malloc (sizeof (struct node));
  • 18. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); 50 struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 New { New=(struct node *) malloc (sizeof (struct node));
  • 19. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 New { New=(struct node *) malloc (sizeof (struct node));
  • 20. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 New { New=(struct node *) malloc (sizeof (struct node));
  • 21. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 New { New=(struct node *) malloc (sizeof (struct node));
  • 22. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); y { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 23. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 24. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 25. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 26. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); r s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 27. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 28. void create(struct node *t) t = 100 New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 29. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 30. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 { New=(struct node *) malloc (sizeof (struct node));
  • 31. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); 60 struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 60 New { New=(struct node *) malloc (sizeof (struct node));
  • 32. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 60 New { New=(struct node *) malloc (sizeof (struct node));
  • 33. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 60 New { New=(struct node *) malloc (sizeof (struct node));
  • 34. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 60 New { New=(struct node *) malloc (sizeof (struct node));
  • 35. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); n { if(ch=='y') s=t; create(t->right); create(root); 100 root } } s } } else 50 60 New { New=(struct node *) malloc (sizeof (struct node));
  • 36. void create(struct node *t) t = NULL New->left=New->right=NULL; { printf("nEnter the Element..."); char ch; scanf("%d",&New->data); struct node *s; if(root==NULL) if(t!=NULL) root=New; { else printf("nWhether you want to insert at { Left or Rigth( L/R) of %d ", t->data); if(c=='l' || c=='L‘) scanf("%c",&c); s->left=New; if(c=='l'|| c=='L‘) else { s->right=New; s=t; create(t->left); } } printf("Do you want add Another (y/n)"); else scanf("%c",&ch); { if(ch=='y') s=t; create(t->right); create(root); 100 root } } } } else 50 60 { New=(struct node *) malloc (sizeof (struct node));
  • 37. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) 0 { top = -1 finish = 0 p=stack[top]; top--;
  • 38. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p p=root; printf("nInorder Traversal is...n"); 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top 0 NULL { finish = 0 p=stack[top]; top--;
  • 39. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p p=root; printf("nInorder Traversal is...n"); 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; top--;
  • 40. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); p 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; top--;
  • 41. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); p 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { p=stack[top]; finish = 0 top--;
  • 42. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; top2 50 } 1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; top--;
  • 43. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; top2 50 } 1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; top--;
  • 44. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; top2 50 } 1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; top--;
  • 45. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); p 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; top--;
  • 46. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 47. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 48. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 49. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 100 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 50. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p p=root; printf("nInorder Traversal is...n"); 50 60 do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 51. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 p do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 52. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 p do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 53. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 p do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 54. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 60 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 55. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 60 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 56. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } top1 60 if(top!=0) 0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 57. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 p do { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 top--;
  • 58. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 60 top--;
  • 59. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 60 top--;
  • 60. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 60 top--;
  • 61. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 0 p=stack[top]; 50 100 60 top--;
  • 62. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 1 p=stack[top]; 50 100 60 top--;
  • 63. void in_order() printf("%d ",p->data); { p=p->right; int finish=0; } if(root==NULL) else { finish=1; printf("nTree is Empty...");return; }while(finish==0); } } 100 root stack[++top]=NULL; p=root; printf("nInorder Traversal is...n"); 50 60 do p NULL { while(p!=NULL) { 4 stack[++top]=p; 3 p=p->left; 2 } 1 if(top!=0) top0 NULL { finish = 1 p=stack[top]; 50 100 60 top--;
  • 64. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else 0 p=stack[top--]; top = -1 finish = 0 } }
  • 65. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } }
  • 66. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } }
  • 67. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 }
  • 68. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 }
  • 69. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 }
  • 70. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 }
  • 71. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); p 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 }
  • 72. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); p 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 }
  • 73. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); p 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 50 }
  • 74. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); p 50 60 while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; top1 60 else 0 NULL p=stack[top--]; } 100 50 }
  • 75. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 p while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 50 }
  • 76. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 p while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 50 }
  • 77. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 p while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 50 60 }
  • 78. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 p while(p!=NULL) { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else top0 NULL p=stack[top--]; } 100 50 60 }
  • 79. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) p NULL { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else 0 p=stack[top--]; top = -1 } 100 50 60 }
  • 80. void pre_order() { if(root==NULL) { printf("nTree is Empty..."); return; } 100 root stack[++top]=NULL; p=root; printf("nPreorder Traversal is...n"); 50 60 while(p!=NULL) p NULL { printf("%d ",p->data); if(p->right!=NULL) 4 stack[++top]=p->right; 3 if(p->left!=NULL) 2 p=p->left; 1 else 0 p=stack[top--]; top = -1 } 100 50 60 }
  • 81. void post_order() { int f; if(root==NULL) { printf("nTree is Empty..."); return; 100 root } stack[++top]=NULL; 50 60 p=root; printf("nPostorder Traversal is...n"); 4 4 3 3 2 2 1 1 0 0 top = -1
  • 82. void post_order() { int f; if(root==NULL) { printf("nTree is Empty..."); return; 100 root } p stack[++top]=NULL; 50 60 p=root; printf("nPostorder Traversal is...n"); 4 4 3 3 2 2 1 1 0 top 0 NULL