C++ program to print all the elements of binary search tree
Description:
This Program is to print all the elements present in the binary search tree.Let's learn it by the help of example:
Input : Tree elements are : 1 2 3 5 6 4 7 8 9 10
Output : All elements in binary search tree are : 1 2 3 5 6 4 7 8 9 10
Program :
//C++ program to print all the elements of binary search tree
#include<bits/stdc++.h>usingnamespacestd;
// tree nodestructNode
{int data;
Node *left, *right;
};
// returns a new tree NodeNode* newNode(int data){
Node* temp = new Node();
temp->data = data;
temp->left = temp->right = NULL;
return temp;
}
// A function to create binary search tree.Node* Tree(Node* root, int data){
// Create node using data entered by user.
Node *temp = newNode(data);
Node *temp1 = new Node;
temp1 = root;
// If root is null then the node created.if(root == NULL)
root = temp;
else
{
// Search the position for the new node to be inserted.while(temp1 != NULL)
{
if(temp1->data < data )
{
if(temp1->right == NULL)
{
// If current node is NULL then the value will be inserted here and break.
temp1->right = temp;
break;
}
// Shift pointer to the left.
temp1 = temp1->right;
}
elseif(temp1->data > data)
{
if(temp1->left == NULL)
{
temp1->left = temp;
break;
}
// Shift pointer to the left.
temp1 = temp1->left;
}
}
}
return root;
}
//function to display all the element present in the binary search treevoiddisplay(struct Node* root){
if (root != NULL)
{
display(root->left);
cout<<root->data<<" ";
display(root->right);
}
}
intmain(){
char ch;
int n, arr[20],size;
Node *root = new Node;
root = NULL;
cout<<"Enter the size of array : ";
cin>>size;
cout<<"Enter the elements in array : ";
for(int i=0;i<size;i++)
{
cin>>arr[i];
}
// Construct the binary search tree.for(int i = 0; i < size; i++)
root = Tree(root, arr[i]);
cout<<"\nEntered Element are : ";
display(root);
return0;
}
Comments