package tree;
public class Node
{
int key;
Node left;
Node right;
}
public class Node
{
int key;
Node left;
Node right;
}
=======================================================================
package tree;
public class BinaryTree
{
Node root= null;
Node temp;
public void add(int value)
{
root = insertRec(root, value);
}
//---------------------------------------
public void inOrderintraverse()
{
intraverse(root);
}
public void preOrderTraverse()
{
pretraverse(root);
}
public void postOrderTraverse()
{
posttraverse(root);
}
//----------------------------------------
//*****************************************
private Node insertRec(Node root, int value)
{
if(root == null)
{
Node node = new Node();
node.key = value;
node.left = null;
node.right = null;
root = node;
return node;
}
else
{
if(value < root.key)
root.left = insertRec(root.left, value);
else if(value > root.key)
root.right = insertRec(root.right, value);
}
return root;
}
//*************************************
private void intraverse(Node root)
{
if(root!= null)
{
intraverse(root.left);
System.out.println(root.key+" ");
intraverse(root.right);
}
}
//*************************************
private void pretraverse(Node root)
{
if(root!= null)
{
System.out.println(root.key+" ");
pretraverse(root.left);
pretraverse(root.right);
}
}
//*************************************
private void posttraverse(Node root)
{
if(root!= null)
{
posttraverse(root.left);
posttraverse(root.right);
System.out.println(root.key+" ");
}
}
}
======================================================================
package tree;
public class Runner {
public static void main(String[] args)
{
BinaryTree tree = new BinaryTree();
tree.add(50);
tree.add(30);
tree.add(20);
tree.add(35);
tree.add(55);
tree.add(52);
tree.add(60);
/* System.out.println("InOrder:");
tree.inOrderintraverse();*/
System.out.println("PreOrder:");
tree.preOrderTraverse();
/* System.out.println("PostOrder:");
tree.postOrderTraverse();
*/
}
}
===================================================================