rendered paste body//Jim
public class exercises
{
public static boolean isLeaf(TreeNode node)
{
return node != null && node.getLeft() == null
&& node.getRight() == null;
}
public static int sumTree(TreeNode root)
{
if(root == null)
return 0;
return ((Integer)root.getValue()).intValue()
+ sumTree(root.getLeft())
+ sumTree(root.getRight());
}
public static int countPaths(TreeNode root)
{
if(root == null)
return 0;
int sum = 0;
if(root.getLeft() != null)
sum += 1 + countPaths(root.getLeft());
if(root.getRight() != null)
sum += 1 + countPaths(root.getRight());
return sum;
}
public static int depth(TreeNode root)
{
if(root == null)
return 0;
return Math.max(1 + depth(root.getLeft()),
1 + depth(root.getRight()));
}
public static void main()
{
TreeNode head = new TreeNode(1, new TreeNode(2, new TreeNode(4), new TreeNode(5)), new TreeNode(3, new TreeNode(6), null));
printTree(head);
System.out.println("\n"+sumTree(head));
System.out.println(countPaths(head));
System.out.println(depth(head));
}
public static void printTree(TreeNode root)
{
if(root == null)
return;
printTree(root.getLeft());
System.out.print(root.getValue()+" ");
printTree(root.getRight());
}
}