2021-07-03剑指offer55-II平衡二叉树
我的想法:
将一整棵二叉树拆成左右两棵树,返回左右两棵树的最大深度,如果最大深度相差一,就为二叉平衡树
但是这个想法是有问题的
这个想法的问题在于,这样做并不能保证左子树和右子树本身符合二叉平衡树的条件,所以必须对于一整棵大的二叉树不断进行拆分,保证拆分的每一颗子树都是二叉平衡树
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平衡二叉树相关推荐
- 剑指Offer II --- 2021/9/2
目录 剑指Offer II 116. 朋友圈 剑指Offer II 098. 路径的数目 剑指Offer II 068. 查找插入位置 剑指Offer II 078. 合并排序链表 剑指Offer I ...
- LeetCode Algorithm 剑指 Offer II 056. 二叉搜索树中两个节点之和
剑指 Offer II 056. 二叉搜索树中两个节点之和 Ideas 这题有点类似一个组合题,首先是通过二叉树遍历得到一个序列,然后再通过LeetCode Algorithm 1. 两数之和的方法查 ...
- 剑指 Offer II 014. 字符串中的变位词
剑指 Offer II 014. 字符串中的变位词 题目 示例 解答 题目来源为leetcode 题目 给定两个字符串s1和s2,写一个函数来判断s2是否包含s1的某个变位词. 换句话说,第一个字符串 ...
- 剑指 Offer II 108. 单词演变
链接:剑指 Offer II 108. 单词演变 题解: class Solution { public:int ladderLength(string beginWord, string endWo ...
- 剑指 Offer II 044. 二叉树每层的最大值
链接:剑指 Offer II 044. 二叉树每层的最大值 题解: /*** Definition for a binary tree node.* struct TreeNode {* int va ...
- 剑指 Offer II 117. 相似的字符串
链接:剑指 Offer II 117. 相似的字符串 题解: 1.建设图 2.bfs遍历 class Solution { public:int numSimilarGroups(vector< ...
- 剑指 Offer II 110. 所有路径
链接: l剑指 Offer II 110. 所有路径 代码:代码没通过 class Solution { public:vector<vector<int>> allPaths ...
- 剑指 Offer II 109. 开密码锁
链接:剑指 Offer II 109. 开密码锁 题解: class Solution { public:int openLock(vector<string>& deadends ...
- 剑指 Offer II 055. 二叉搜索树迭代器
链接:剑指 Offer II 055. 二叉搜索树迭代器 题解: /*** Definition for a binary tree node.* struct TreeNode {* int val ...
- 剑指 Offer II 106. 二分图
链接:剑指 Offer II 106. 二分图 题解: class Solution { private: // BFSbool setColor(vector<vector<int> ...
最新文章
- 使用 PyTorch 时,最常见的 4 个错误
- 关于dataTables 的排序问题
- centos 下postgres源码安装
- 代码分析 公用类库
- PHP+MySQL 注射资料
- C++ STL vector的操作
- 使用SerialPort 对象实现串口拨号器通信[下]
- 如果你的苹果Mac键盘锁住了要怎么办呢?快来看看此教程吧!
- [工具书]IntelliJ IDEA社区版下载及配置 - ZIP版
- 北京54、西安80、CGCS2000、WGS84坐标系及区别
- 淘宝网打开很慢、特别慢的完美解决方法
- 三菱Q系列总线型项目程序全套,三菱PLC程序+proface触摸屏双屏
- html ul4032,国标UL认证安规标准UL1059接线端子及附件.pdf
- Win11设置人离开后电脑自动锁屏教程
- 利用神经网络识别12306验证码——(五)训练模型
- 工程经济有何难,思维导图来助阵
- ARPG游戏中怪物AI实现
- 计算机断电重启后蓝屏,电脑断电后重启屏幕出现蓝屏代码0x000000f4解决方法
- Angular 组件类测试
- BIGO | imo实时语音传输优化揭秘
热门文章
- Building Komodo with Docker
- 容器单机编排工具 Docker Compose,swap 限制,配置默认的CFS调度程序,Stress-ng 压力测试工具,docker官网镜像上传,及阿里云镜像上传,Docker 的资源限制
- qlabel 边加载边更新_拉风!在惠东路上看到一辆边三轮,车牌还是quot;京A好几个8quot;...
- C#,码海拾贝(11)——拉格朗日(Lagrange)三点式曲面插值(Surface Interpolation)算法C#源程序
- linux添加人脸识别认证
- lsqcurvefit和nlinfit用法
- 智慧医疗以小见大 | 联想智慧医疗的青葱岁月
- 基于51单片机MAX6675的热电偶智能体温度检测proteus仿真程序设计
- html5 微信原生登录,用HTML5实现微信密码输入框
- [海思3519av100] 海思开发板设置静态ip并设置telnetd自启动服务