110. 平衡二叉树

【饿了么、美团】外卖红包领取地址 >> 能省一点是一点

题目:https://leetcode-cn.com/problems/balanced-binary-tree/

代码:

class Solution {

    public boolean isBalanced(TreeNode root) {
        if (root == null) {
            return true;
        }
        int lh = getHeight(root.left);
        int rh = getHeight(root.right);
        if (Math.abs(lh - rh) <= 1 && isBalanced(root.left) && isBalanced(root.right)) {
            return true;
        }
        return false;
    }

    /**
     * 获取树的高度
     * @param node
     * @return
     */
    private int getHeight(TreeNode node) {
        if (node == null) {
            return 0;
        }
        int lh = getHeight(node.left);
        int rh = getHeight(node.right);
        return Math.max(lh, rh) + 1;
    }

}

思路:

题目中对高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。

那我们的就从树的高度入手,我们写一个方法用来获取某个节点的树高度(递归调用,节点为null则认为高度为0,否则高度为左右子树高度的最大值+1)。获取树的高度的方法实现之后,题目就迎刃而解,按照题目的要求写条件即可。


觉得内容还不错?打赏个钢镚鼓励鼓励!!👍

福东海 山楂粉250克养生去核粉细腻 优质清香酸甜可口
¥34.90
斑马牌 (ZEBRA)四色圆珠笔带自动铅笔(四色圆珠笔+铅笔) 0.7mm子弹头按动多功能多色笔 B4SA1 紫色杆
¥21.78
澳浪 airpods pro二代保护套 苹果airpods pro2无线蓝牙耳机盒卡通硅胶壳皮纹软潮个性创意污指纹小鳄鱼 绿色
¥31.00
777(THREE SEVEN)掏耳勺 不锈钢双面挖耳勺扣耳勺掏耳朵神器采耳工具 PE-450
¥24.00
花之物语 蔚蓝男士香水持久男淡香 学生商务男士情侣礼物花果木质香体喷雾 蔚蓝香水
¥9.90
蓝海E线(BOEL) 六类千兆网线家用CAT6类高速8芯带水晶头电脑接路由器网吧通用非屏蔽跳线连接线 灰色 30米
¥45.50
倍思 iPhoneXS Max/11 Pro Max防窥钢化膜 苹果手机钢化膜 全屏9D曲面高清玻璃贴膜6.5英寸黑色
¥34.00
孜泰 6A/5A超级快充Type-C数据线100W/66W/40W/22.5W手机充电线华为P50/mate50/40/小米/荣耀X30等 1米 黑色
¥11.10