Question :
To find height of any binary treeCode :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | public class TreeHeightFinder { public static int findHeight(Node root){ int leftHeight = 0 ; int rightHeight = 0 ; if (root.getLeft() != null ){ leftHeight = findHeight(root.getLeft()); } if (root.getRight() != null ){ rightHeight = findHeight(root.getRight()); } int maxHeight = max(leftHeight,rightHeight); return 1 + maxHeight; } public static int max( int a, int b){ return a > b ? a : b; } } |
Now lets build a tree and test it(tree is like below)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public static void main(String args[]){ Node root = new Node( 1 ); Node l = new Node( 2 ); Node r = new Node( 3 ); Node l1 = new Node( 12 ); Node l2 = new Node( 13 ); Node r1 = new Node( 6 ); Node r2 = new Node( 8 ); root.setLeft(l); root.setRight(r); l.setLeft(l1); l.setRight(l2); r.setLeft(r1); r.setRight(r2); System.out.println( "Height is : " + TreeHeightFinder.findHeight(root)); } |