标签:
Balanced Binary Tree: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,其中要编写求深度的函数。
代码:
public class Solution { public boolean isBalanced(TreeNode root) { if(root==null) return true; if(root.left==null&&root.right==null) return true; if(Math.abs(depth(root.left)-depth(root.right))>1){ return false; } return isBalanced(root.left)&&isBalanced(root.right); } public int depth(TreeNode root){ if(root==null){ return 0; } return 1 + Math.max(depth(root.left),depth(root.right)); } }
LeetCode(110): Balanced Binary Tree
标签:
原文地址:http://www.cnblogs.com/Lewisr/p/5232150.html