Earn without any Investment!

Saturday, November 13, 2010

Search element in binary tree

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
struct node
 {
       int data;
       node *left;
       node *right;
  }*tree;

  //*tree=NULL;
  node *insert(node *tree,int ele);
  void search();
  int count=1;
  void main()
  {
       clrscr();
       char ch;
       int ele;
       do
       {
        clrscr();
        cout<<"\n\t1----INSERT A NODE IN A BINARY TREE.";
        cout<<"\n\t2----SEARCH.";
        cout<<"\n\t3----EXIT.";
        cout<<"\n\tENTER CHOICE::";
        ch=getch();
        switch(ch)
        {
              case '1':
                     cout<<"\n\tENTER THE ELEMENT::";
         cin>>ele;
        tree=insert(tree,ele);
        break;

                           case '2':
        search();
        getch();
        break;
              case '3':
        exit(0);
        break;
               }
       } while(ch!='3');
  }

  node *insert(node *tree,int ele)
  {
       if(tree==NULL)
       {
        tree=new node;
        tree->left=tree->right=NULL;
        tree->data=ele;
        count++;
       }
       elseif(count%2==0)
           tree->left=insert(tree->left,ele);
       else
           tree->right=insert(tree->right,ele);
       return(tree);
  }

    int t=0;
    void src(node *tree,int);
    void search()
    {
         int sr;
         cout<<"Enter data to search\n";
         cin>>sr;
         src(tree,sr);
          if(t==1)
     cout<<"Element found";
          else
      cout<<"Not Found";
           t=0;

      }
     void src(node *tree,int sr)
      {
          if(tree!=NULL)
           {
                if(tree->data==sr)
                 {
                        t=1;
                  }
     src(tree->left,sr);
     src(tree->right,sr);
             }
         }

No comments:

Post a Comment