(PreOrder | InOrder | PostOrder Traverse Using Recursive Calls) Binary Search Tree In Data Structure Using C++

Data Structure Using C++

Tree Data Structure

Binary Search Tree

(PreOrder | InOrder | PostOrder Traverse Using Recursive Calls) Binary Search Tree

#include "treeNode.cpp"
void insert(treeNode* root, int info);
void preorder(treeNode* treeNode);
void inorder(treeNode* treeNode);
void postorder(treeNode* treeNode);
using namespace std;
int main()
{
 int x[] = { 14, 15, 4, 9, 7, 18, 3, 5, 16,4, 20, 17, 9, 14, 5, -1};
 treeNode *root = new treeNode();
 root->setInfo(x[0]);
 for(int i=1; x[i]>0; i++ )
 {
  insert(root, x[i] );
 } 
 cout<<"preorder: "<<endl;  
 preorder(root);
 cout<<endl<< "inorder: "<<endl;   
 inorder(root);
 cout<<endl<<"postorder: "<<endl; 
 postorder(root);
}
void preorder(treeNode* treeNode)
{
    if( treeNode != NULL ) 
    {
        cout << treeNode->getInfo()<<" ";
        preorder(treeNode->getLeft());
        preorder(treeNode->getRight());
    }
}
void inorder(treeNode* treeNode)
{
    if( treeNode != NULL ) 
    {
        inorder(treeNode->getLeft());
        cout << treeNode->getInfo()<<" ";
        inorder(treeNode->getRight());
    }
}
void postorder(treeNode* treeNode)
{
    if( treeNode != NULL ) 
    {
        postorder(treeNode->getLeft());
        postorder(treeNode->getRight());
        cout << treeNode->getInfo()<<" ";
    }
}

Let me know in the comment section if you have any question.

Previous Post:
(Insert Function) Binary Search Tree In C++

Comments