🚩传送门:牛客题目
题目
输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。
解题思路:递归
public class Solution {public int GetTreeHight(TreeNode root){if(root==null)return 0;int lefthight=GetTreeHight(root.left);int righthight=GetTreeHight(root.right);//1.子树不平衡或当前不平衡if(lefthight==-1||righthight==-1||Math.abs(lefthight-righthight)>1)return -1;//2.平衡return Math.max(lefthight,righthight)+1;}public boolean IsBalanced_Solution(TreeNode root) {if(root==null) return true;return GetTreeHight(root)>0;}}
