我的想法:
将一整棵二叉树拆成左右两棵树,返回左右两棵树的最大深度,如果最大深度相差一,就为二叉平衡树
但是这个想法是有问题的
这个想法的问题在于,这样做并不能保证左子树和右子树本身符合二叉平衡树的条件,所以必须对于一整棵大的二叉树不断进行拆分,保证拆分的每一颗子树都是二叉平衡树

class Solution {public:bool isBalanced(TreeNode* root) {if(!root)return true;int left_depth = dfs(root->left);int right_depth = dfs(root->right);/*if(abs(left_depth - right_depth) <= 1)return true;else return false;*/return abs(left_depth - right_depth) <= 1 && isBalanced(root->left) && isBalanced(root->right);}int dfs(TreeNode*root){if(!root)return 0;return 1 + max(dfs(root->left),dfs(root->right));}
};

2021-07-03剑指offer55-II平衡二叉树相关推荐

  1. 剑指Offer II --- 2021/9/2

    目录 剑指Offer II 116. 朋友圈 剑指Offer II 098. 路径的数目 剑指Offer II 068. 查找插入位置 剑指Offer II 078. 合并排序链表 剑指Offer I ...

  2. LeetCode Algorithm 剑指 Offer II 056. 二叉搜索树中两个节点之和

    剑指 Offer II 056. 二叉搜索树中两个节点之和 Ideas 这题有点类似一个组合题,首先是通过二叉树遍历得到一个序列,然后再通过LeetCode Algorithm 1. 两数之和的方法查 ...

  3. 剑指 Offer II 014. 字符串中的变位词

    剑指 Offer II 014. 字符串中的变位词 题目 示例 解答 题目来源为leetcode 题目 给定两个字符串s1和s2,写一个函数来判断s2是否包含s1的某个变位词. 换句话说,第一个字符串 ...

  4. 剑指 Offer II 108. 单词演变

    链接:剑指 Offer II 108. 单词演变 题解: class Solution { public:int ladderLength(string beginWord, string endWo ...

  5. 剑指 Offer II 044. 二叉树每层的最大值

    链接:剑指 Offer II 044. 二叉树每层的最大值 题解: /*** Definition for a binary tree node.* struct TreeNode {* int va ...

  6. 剑指 Offer II 117. 相似的字符串

    链接:剑指 Offer II 117. 相似的字符串 题解: 1.建设图 2.bfs遍历 class Solution { public:int numSimilarGroups(vector< ...

  7. 剑指 Offer II 110. 所有路径

    链接: l剑指 Offer II 110. 所有路径 代码:代码没通过 class Solution { public:vector<vector<int>> allPaths ...

  8. 剑指 Offer II 109. 开密码锁

    链接:剑指 Offer II 109. 开密码锁 题解: class Solution { public:int openLock(vector<string>& deadends ...

  9. 剑指 Offer II 055. 二叉搜索树迭代器

    链接:剑指 Offer II 055. 二叉搜索树迭代器 题解: /*** Definition for a binary tree node.* struct TreeNode {* int val ...

  10. 剑指 Offer II 106. 二分图

    链接:剑指 Offer II 106. 二分图 题解: class Solution { private: // BFSbool setColor(vector<vector<int> ...

最新文章

  1. 使用 PyTorch 时,最常见的 4 个错误
  2. 关于dataTables 的排序问题
  3. centos 下postgres源码安装
  4. 代码分析 公用类库
  5. PHP+MySQL 注射资料
  6. C++ STL vector的操作
  7. 使用SerialPort 对象实现串口拨号器通信[下]
  8. 如果你的苹果Mac键盘锁住了要怎么办呢?快来看看此教程吧!
  9. [工具书]IntelliJ IDEA社区版下载及配置 - ZIP版
  10. 北京54、西安80、CGCS2000、WGS84坐标系及区别
  11. 淘宝网打开很慢、特别慢的完美解决方法
  12. 三菱Q系列总线型项目程序全套,三菱PLC程序+proface触摸屏双屏
  13. html ul4032,国标UL认证安规标准UL1059接线端子及附件.pdf
  14. Win11设置人离开后电脑自动锁屏教程
  15. 利用神经网络识别12306验证码——(五)训练模型
  16. 工程经济有何难,思维导图来助阵
  17. ARPG游戏中怪物AI实现
  18. 计算机断电重启后蓝屏,电脑断电后重启屏幕出现蓝屏代码0x000000f4解决方法
  19. Angular 组件类测试
  20. BIGO | imo实时语音传输优化揭秘

热门文章

  1. Building Komodo with Docker
  2. 容器单机编排工具 Docker Compose,swap 限制,配置默认的CFS调度程序,Stress-ng 压力测试工具,docker官网镜像上传,及阿里云镜像上传,Docker 的资源限制
  3. qlabel 边加载边更新_拉风!在惠东路上看到一辆边三轮,车牌还是quot;京A好几个8quot;...
  4. C#,码海拾贝(11)——拉格朗日(Lagrange)三点式曲面插值(Surface Interpolation)算法C#源程序
  5. linux添加人脸识别认证
  6. lsqcurvefit和nlinfit用法
  7. 智慧医疗以小见大 | 联想智慧医疗的青葱岁月
  8. 基于51单片机MAX6675的热电偶智能体温度检测proteus仿真程序设计
  9. html5 微信原生登录,用HTML5实现微信密码输入框
  10. [海思3519av100] 海思开发板设置静态ip并设置telnetd自启动服务