Balanced Binary Tree

^_^


Recursive

    public boolean isBalanced(TreeNode root) {
        return helper(root) != -1;
    }

    private int helper(TreeNode root){
        if(root == null) return 0;
        else {
            int left = helper(root.left), right = helper(root.right);
            if(left == -1 || right == -1) return -1;
            else return Math.abs(left - right) <= 1 ? Math.max(left, right) + 1 : -1;
        }
    }

Stack



results matching ""

    No results matching ""