@@ -0,0 +1,1872 @@
+import java.util.ArrayList;%0A%0Apublic class IntTree %7B%0A%0A    IntTreeNode root = null;%0A%0A    public boolean isEmpty() %7B%0A        return root == null;%0A    %7D%0A%0A%0A    public void add(int value) %7B%0A        if (isEmpty()) %7B%0A            root = new IntTreeNode(value);%0A        %7D else %7B%0A            root.addToChildren(value);%0A        %7D%0A    %7D%0A%0A    public boolean searchIfContains(int valueToFind) %7B%0A        return root.searchIfChildrenContain(valueToFind);%0A%0A    %7D%0A%0A    public int countNodes() %7B%0A%0A%0A        if (isEmpty()) %7B%0A            return 0;%0A        %7D%0A        return root.countChildrenNodes();%0A    %7D%0A%0A    public void clear() %7B%0A        root = null;%0A    %7D%0A%0A    public int maxHeight() %7B%0A%0A        if (isEmpty()) %7B%0A            return 0;%0A        %7D%0A%0A        return root.maxHeightOfChildren();%0A    %7D%0A%0A    public void printPreOrder() %7B // PRINT PRE ORDER%0A%0A        if (!isEmpty()) %7B%0A            root.printPreOrderChildren();%0A        %7D%0A    %7D%0A%0A    // paint in order up%0A    // paint in order down%0A    // paint post order          (1,5,6,4,14,13,15,12)%0A%0A%0A    public void paintInOrder() %7B%0A        System.out.println();%0A        root.paintChildrenInOrder();%0A    %7D%0A%0A    public void paintInOrderDown() %7B%0A        System.out.println();%0A%0A        root.paintChildrenInOrderDown();%0A    %7D%0A%0A    public void printLevelOrder2(IntTreeNode root) %7B%0A%0A        ArrayList%3CIntTreeNode%3E al = new ArrayList%3C%3E();%0A%0A        al.add(root);%0A%0A        while (!al.isEmpty())%7B%0A            int levelNodes = al.size();%0A%0A            while(levelNodes %3E 0)%7B%0A                IntTreeNode n = al.remove(0);%0A                System.out.print(%22 %22 +  n.value);%0A%0A                if (n.left != null)%7B%0A                    al.add(n.left);%0A                %7D%0A%0A                if (n.right != null)%7B%0A                    al.add(n.right);%0A                %7D%0A%0A                levelNodes--;%0A            %7D%0A            System.out.println();%0A        %7D%0A%0A    %7D%0A%7D%0A%0A%0A%0A%0A%0A

Create IntTree.java