首页 > 其他分享 >110.balanced-binary-tree 平衡二叉树

110.balanced-binary-tree 平衡二叉树

时间:2022-08-28 18:34:11浏览次数:66  
标签:binary return rdp int tree getDp ldp 二叉树 root

获取左右子树的高度,如果左右子树高度差小于等于1,则判断左右子树的左右子树,如此递归下去。

class Solution {
  public:
    int getDp(TreeNode *root) {
        if (root == nullptr)
            return 0;
        int ldp = getDp(root->left);
        int rdp = getDp(root->right);
        return (ldp < rdp ? rdp : ldp) + 1;
    }
    bool isBalanced(TreeNode *root) {
        if (root == nullptr)
            return true;

        int ldp = getDp(root->left);
        int rdp = getDp(root->right);
        if (ldp - rdp <= 1 && ldp - rdp >= -1) {
            bool l = isBalanced(root->left);
            bool r = isBalanced(root->right);
            return l && r;
        } else
            return false;
    }
};

标签:binary,return,rdp,int,tree,getDp,ldp,二叉树,root
From: https://www.cnblogs.com/zwyyy456/p/16633335.html

相关文章

  • 反转二叉树演练 leetcode |第 6 部分
    反转二叉树演练leetcode|第6部分上一个问题[有效回文演练Leetcode|第5部分上一个问题媒体网](/@nerdhide/valid-palindrome-walkthrough-leetcode-part-5-8......
  • 【重要】LeetCode 662. 二叉树最大宽度
    题目链接注意事项根据满二叉树的节点编号规则:若根节点编号为u,则其左子节点编号为u<<1,其右节点编号为u<<1|1。一个朴素的想法是:我们在DFS过程中使用两个哈希表......
  • 662. 二叉树最大宽度
    662.二叉树最大宽度给你一棵二叉树的根节点root,返回树的最大宽度。树的最大宽度是所有层中最大的宽度。每一层的宽度被定义为该层最左和最右的非空节点......
  • 二叉树
    1树的结构 1.1树的概念:树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。有一个特殊的节点叫根节点,根节点没有前驱。其余节点被分成......
  • 222.count-complete-tree-nodes 完全二叉树的节点个数
    遍历法遍历所有节点的方法,时间复杂度为\(O(n)\)classSolution{public:intcountNodes(TreeNode*root){if(root==nullptr)return0......
  • CF1710D Recover theTree
    题意:给定每个区间是不是连通块,还原这棵树。(\(n\leqslant2000\))题解:我肯定是做不出来,也不理解是怎么想的。不如直接讲做法,然后证明正确性,也是对wc题解的补充。先贴......
  • uniGUI学习之UniTreeview(56)
    UniTreeview中能改变一级目录的字体和颜色functionbeforeInit(sender,config){ID="#"+config.id;Ext.util.CSS.createStyleSheet(`${ID}.x-tree-node-text{c......
  • 【luogu AT2377】Blue and Red Tree(思维)(STL)(启发式合并)
    BlueandRedTree题目链接:luoguAT2377题目大意给你一棵树,每次你可以选一条路径,删掉其中的一条边,然后把路径两断点编号在另一个一样点数的图上连边。然后给你一个要求......
  • 101. 对称二叉树
    101.对称二叉树给你一个二叉树的根节点root,检查它是否轴对称。 示例1:输入:root=[1,2,2,3,4,4,3]输出:true示例2:输入:root=[1,2,2,null,3,null,3]输出:fa......
  • leetcode144:二叉树的前序遍历
    packagecom.mxnet;importjava.util.ArrayList;importjava.util.List;publicclassSolution144{publicstaticvoidmain(String[]args){}/**......