Subscribe Us

Responsive Advertisement

Advertisement

problem 34(tree several operation)

 



problem 34(tree several operation)




#include<stdio.h>

struct node

{

    int data;

    struct node *left;

    struct node *right;

};

struct node *createnode(int val)

{

    struct node *temp;

    temp=(struct node *)malloc(sizeof(struct node));

    temp->data=val;

    temp->left=NULL;

    temp->right=NULL;

    return temp;

};

void preorder(struct node *root)

{

    if(root!=NULL)

    {

        printf("%d ",root->data);

        preorder(root->left);

        preorder(root->right);


    }


}


void postorder(struct node *root)

{

    if(root!=NULL)

    {

        postorder(root->left);

        postorder(root->right);

        printf("%d ",root->data);

    }


}

void inorder(struct node *root)

{


       if(root!=NULL)

    {

        inorder(root->left);

        printf("%d ",root->data);

        inorder(root->right);


    }

}

int main()

{

     struct node *p1,*p2,*p3,*p4,*p5,*p6,*p7;

     p1=createnode(1);

     p2=createnode(2);

     p3=createnode(3);

     p4=createnode(4);

     p5=createnode(5);

     p1->left=p2;

     p1->right=p3;

     p2->right=p4;

     p3->left=p5;

     preorder(p1);

     printf("\n");

     postorder(p1);

      printf("\n");

     inorder(p1);


    return 0;

}


Post a Comment

0 Comments