assignment 5
assignment 5
node *L,*R;
};
class BST
{ public:
void create(node *root); void inorder(node *root); void preorder(node *root); void postorder(node *root);
void min(node *root); void max(node *root); void insert(node *root); node *search(node *root,int key); void
};
if(temp->L==NULL)
temp=temp->L;
if(temp->R==NULL)
temp->R=ne; break;
} else
temp=temp->R;
}
cout<<"Do You Want To Add More:"<<endl; cin>>ans;
}while(ans=='y'||ans=='Y');
void BST::insert(node*root)
ne>R=NULL; temp=root;
while(1)
if(ne->data<temp->data)
if(temp->L==NULL)
temp->L=ne;
break; } else
temp=temp->L;
} } else
if(temp->R==NULL)
{ temp->R=ne;
break; } else
temp=temp->R;
void BST::inorder(node*root)
if(root!=NULL)
void BST::preorder(node*root)
if(root!=NULL)
>R);
void BST::postorder(node*root)
if(root!=NULL)
void BST::min(node*root)
temp=temp->L;
cout<<"Minimum="<<temp->data<<endl;
void BST::max(node*root)
temp=temp->R;
cout<<"Maximum="<<temp->data<<endl;
if(root==NULL||root->data==key)
return root;
}
if(root->data>key)
return search(root->L,key);
void BST::mirror(node*root)
node*temp;
if(root!=NULL)
mirror(root->R);
int BST::height(node*root)
{ i=i+height(root->L); j=j+height(root-
>R);
} return(max);
}
int main() {
break;
case 3:ob.preorder(root);
break;
else
cout<<"\nkeyisPresen nBST"<<endl;
cout<<"height="<<i<<end
l; break;
} } return 0;
} output: enteryourchoice =
10
9
Do You Want To Add More:
1create
2inorder
3preorder
4postorder
5insert
6min
7max
10 12
15 18
1create
2inorder
3preorder
4postorder
5insert
6min
7max