Program to reconstruct a binary search tree.
#include #include #include #define MAX 101 struct node { struct node *left ; int data ; struct node *right ; } ; void insert ( struct node **, int ) ; void preorder ( struct node * ) ; void postorder ( struct node * ) ; void inorder ( struct node * ) ; struct node * recons ( int *, int *, int ) ; void deltree ( struct node * ) ; int in[MAX], pre[MAX], x ; void main( ) { struct node *t, *p, *q ; int req, i, num ; t = NULL ; /* empty tree */ clrscr( ) ; printf ( "Specify the number of items to be inserted: " ) ; while ( 1 ) { scanf ( "%d", &req ) ; if ( req >= MAX || req printf ( "\nEnter number between 1 to 100.\n" ) ; else break ; } for ( i = 0 ; i { printf ( "Enter the data: " ) ; scanf ( "%d", &num ) ; insert ( &t, num ) ; } printf ( "\nIn-order Traversal:\n" ) ; x = 0 ; inorder ( t ) ; printf ( "\nPre-order Traversal:\n" ) ; x = 0 ; preorder ( t ) ; printf ...