Monday, June 12, 2017

Height of BST


package bst;
import static java.lang.Math.max;
/**
* Created by panded4
*/
public class HeightBST {
int leftH = 0, rightH = 0;
private TreeNode head;
public HeightBST() {
this.head = createTree();
}
public static void main(String[] args) {
HeightBST heightBST = new HeightBST();
System.out.println(heightBST.calculateHeight(heightBST.head));
}
private TreeNode createTree() {
TreeNode n1 = new TreeNode(1);
TreeNode n2 = new TreeNode(2);
TreeNode n3 = new TreeNode(3);
TreeNode n4 = new TreeNode(4);
TreeNode n5 = new TreeNode(5);
TreeNode n6 = new TreeNode(6);
TreeNode n7 = new TreeNode(7);
TreeNode n8 = new TreeNode(8);
TreeNode n9 = new TreeNode(9);
n1.left = n2;
n1.right = n3;
n2.left = n4;
n2.right = n5;
n3.left = n6;
n3.right = n7;
n4.left = n8;
n4.right = n9;
return n1;
}
int calculateHeight(TreeNode head) {
if (head == null) {
return 0;
}
leftH = calculateHeight(head.left);
rightH = calculateHeight(head.right);
return 1 + max(leftH, rightH);
}
}
view raw HeightBST.java hosted with ❤ by GitHub

No comments:

Post a Comment

Creating mirror of BST