解题思路:先求出根节点的左右节点深度,当深度差值大于1时,输出false;否则输出true。注意当根节点为空时,也是平衡二叉树。
import java.util.*; public class Solution { public boolean IsBalanced_Solution(TreeNode root) { if(root!=null){ if(Math.abs(depth(root.left)-depth(root.right))<2){ return true; } else{ return false; } } return true; } public int depth(TreeNode root){ if(root==null){ return 0; } int l=depth(root.left); int r=depth(root.right); if(l<r){ return r+1; } else{ return l+1; } } }