LeetCode110 Blanced Binary Tree Java 题解

原创 2015年07月06日 22:01:02

题目:

Given a binary tree, determine if it is height-balanced.

For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.


题解:

判断一颗二叉树是不是平衡二叉树  ,平衡二叉树是每个节点都满足指左右子树的高度差小于1

我们通过计算每一个节点的左右高度差  一旦发现有不满足的节点就将返回值置为-1   这两句代码if(left==-1) return -1;
if(right==-1) return -1保证只要出现一个高度差为-1的最终返回结果必然为-1,也就是说最终可以根据返回值是不是-1判断是不是平衡二叉树


代码:

public static boolean isBalanced(TreeNode root) {
		if(treeHight(root)==-1)
			return false;
		else 
			return true;
					
        
    }
	
	public static int treeHight(TreeNode root)
	{
		if(root==null)
			return 0;
		else {
			int left=treeHight(root.left);
			int right=treeHight(root.right);
			if(left==-1) return -1;
			if(right==-1) return -1;
			if(Math.abs(left-right)>1)
				return -1;
			else {
				return 1+Math.max(treeHight(root.left), treeHight(root.right));
			}
		}
	}


【LeetCode-面试算法经典-Java实现】【110-Balanced Binary Tree(平衡二叉树)】

【110-Balanced Binary Tree(平衡二叉树)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given a binary tree, determin...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月11日 07:34
  • 3722

LeetCode(110)Balanced Binary Tree

题目如下: 分析如下: 之前尝试一边计算深度,一边做判断,发现这是无法实现的。因为bool型的返回变量说明了返回值没有深度信息,而如果没有深度信息,那么就无法判断左子树和右子树的深度差是否为1.所...
  • feliciafay
  • feliciafay
  • 2014年01月16日 07:46
  • 5070

【XSY2332】Randomized Binary Search Tree 概率DP FFT

题目描述  ∀0≤i
  • ez_yww
  • ez_yww
  • 2017年10月08日 20:49
  • 73

ORG.APACHE.CATALINA.CORE.STANDARDCONTEXT LISTENERSTART

加入 org.springframework.web.context.ContextLoaderListener 出现了如图的异常,没有任何错误日志提示。 到tomcat的l...
  • b1412
  • b1412
  • 2011年12月22日 23:20
  • 1602

【LeetCode】Binary Tree Maximum Path Sum 解题报告

【题目】 Given a binary tree, find the maximum path sum. The path may start and end at any node ...
  • ljiabin
  • ljiabin
  • 2015年01月22日 16:15
  • 3252

leetcode110~Balanced Binary Tree

Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary t...
  • stone_yw
  • stone_yw
  • 2017年02月18日 20:55
  • 84

LeetCode110——Balanced Binary Tree

Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced bina...
  • booirror
  • booirror
  • 2015年02月05日 15:26
  • 1319

LeetCode110:Balanced Binary Tree

/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode...
  • dingchenxixi
  • dingchenxixi
  • 2016年12月11日 11:15
  • 146

leetcode110 Balanced Binary Tree

题目Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary...
  • kevinjqy
  • kevinjqy
  • 2017年05月06日 15:35
  • 157

LeetCode110—Balanced Binary Tree

LeetCode110—Balanced Binary Tree
  • zhangxiao93
  • zhangxiao93
  • 2016年03月30日 23:14
  • 268
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode110 Blanced Binary Tree Java 题解
举报原因:
原因补充:

(最多只允许输入30个字)