#include using namespace std; template class BinaryTreeNode { public: T data; BinaryTreeNode* left; BinaryTreeNode* right; BinaryTreeNode(T data){ this->data=data; left=NULL; right=NULL; } ~BinaryTreeNode(){ delete left; delete right; } }; //printing binary tree void printTree(BinaryTreeNode* root) { if(root==NULL) return; cout<data<<":"; if(root->left){ cout<<"L"<left->data<<" "; } if(root->right){ cout<<"R"<right->data<<" "; } cout<left); printTree(root->right); } int main() { BinaryTreeNode* root=new BinaryTreeNode(1); BinaryTreeNode* node1=new BinaryTreeNode(2); BinaryTreeNode* node2=new BinaryTreeNode(3); root->left=node1; root->right=node2; printTree(root); delete root; return 0; }