Implementing Binary Trees
Just like other ADTs,
we can implement a binary tree using pointers or arrays.
A pointer based implementation example:
     struct node {
       data value;
       node * left_child;
       node * right_child;
     };