void printPostorder(Node node)
printPostorder(node.left);
printPostorder(node.right);
Console.Write(node.key + " ");
void printInorder(Node node)
Console.Write(node.key + " ");
printInorder(node.right);
void printPreorder(Node node)
Console.Write(node.key + " ");
printPreorder(node.left);
printPreorder(node.right);
void printPostorder() {printPostorder(root);}
void printInorder() {printInorder(root);}
void printPreorder() {printPreorder(root);}
static public void Main(String []args)
BinaryTree tree = new BinaryTree();
tree.root.left = new Node(2);
tree.root.right = new Node(3);
tree.root.left.left = new Node(4);
tree.root.left.right = new Node(5);
Console.WriteLine("Preorder traversal " +
Console.WriteLine("\nInorder traversal " +
Console.WriteLine("\nPostorder traversal " +