public class TreeNode { private String item; private TreeNode left; private TreeNode right; // leaf public TreeNode(String item){ } // unary tree, left gets the child tree public TreeNode(String item, TreeNode child){ } // binary tree public TreeNode(String item, TreeNode left, TreeNode right){ } String getItem(){ return ""; } TreeNode getLeft(){ return null; } TreeNode getRight(){ return null; } public String toString(){ if(right == null) if(left == null) return "leaf " + item; else return "unary " + item; else return "binary " + item; } public static void main(String[] args){ TreeNode tn1 = new TreeNode("true"); TreeNode tn2 = new TreeNode("false"); TreeNode atree = new TreeNode("and",tn1,tn2); System.out.println("and tree: " + atree); System.out.println(" left: " + atree.getLeft()); System.out.println(" right: " + atree.getRight()); TreeNode tn3 = new TreeNode("false"); TreeNode ntree = new TreeNode("not",tn3); System.out.println("not tree: " + ntree); System.out.println(" left: " + ntree.getLeft()); } }