当前位置: 首页 > news >正文

[LeetCode]Balanced Binary Tree

Balanced Binary Tree

Given a binary tree, determine if it is height-balanced.

For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.

 

对每个节点计算该节点的深度,做过左右节点深度相差大于1,false。

 1 /**
 2  * Definition for a binary tree node.
 3  * struct TreeNode {
 4  *     int val;
 5  *     TreeNode *left;
 6  *     TreeNode *right;
 7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 8  * };
 9  */
10 class Solution {
11 public:
12     int depthOfTree(TreeNode* root)
13     {
14         if(!root) return 0;
15         return max(depthOfTree(root->left),depthOfTree(root->right))+1;
16     }
17     bool isBalanced(TreeNode* root) {
18         if(!root) return true;
19         if (abs(depthOfTree(root->left)-depthOfTree(root->right))>1) return false;
20         bool left = isBalanced(root->left);
21         bool right = isBalanced(root->right);
22         return left&&right;
23     }
24 };

 

转载于:https://www.cnblogs.com/Sean-le/p/4796286.html

相关文章:

  • 导入myeclipse项目出现的问题及解决方案
  • 多线程--多线程断点下载
  • 《代码整洁之道》第十二章:跌进
  • django 1.8 官方文档翻译:5-1-2 表单API
  • iOS--警告收录及科学快速的消除方法
  • java环境变量设置
  • jdk 安装配置
  • jsp中文显示乱码的解决办法
  • 携程App for Apple Watch探索
  • 从头开始敲代码之《从BaseApplication/Activity开始(三)》
  • 前端性能优化(十)
  • 汇编语言HelloWorld
  • n个元素的入栈顺序有多少种出栈顺序?
  • 迅维网
  • PL/SQL database character set(AL32UTF8) and Client character set(ZHS16GBK) are different
  • 自己简单写的 事件订阅机制
  • [deviceone开发]-do_Webview的基本示例
  • Angular 响应式表单 基础例子
  • co模块的前端实现
  • js操作时间(持续更新)
  • JS实现简单的MVC模式开发小游戏
  • opencv python Meanshift 和 Camshift
  • Promise面试题,控制异步流程
  • Python实现BT种子转化为磁力链接【实战】
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • Swoft 源码剖析 - 代码自动更新机制
  • Transformer-XL: Unleashing the Potential of Attention Models
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 大数据与云计算学习:数据分析(二)
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 设计模式走一遍---观察者模式
  • 【云吞铺子】性能抖动剖析(二)
  • ionic异常记录
  • UI设计初学者应该如何入门?
  • ​如何在iOS手机上查看应用日志
  • #ifdef 的技巧用法
  • #pragam once 和 #ifndef 预编译头
  • $$$$GB2312-80区位编码表$$$$
  • (libusb) usb口自动刷新
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (算法)求1到1亿间的质数或素数
  • (转)项目管理杂谈-我所期望的新人
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .apk 成为历史!
  • .naturalWidth 和naturalHeight属性,
  • .net framework 4.0中如何 输出 form 的name属性。
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .net 验证控件和javaScript的冲突问题
  • .net(C#)中String.Format如何使用
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • [ 蓝桥杯Web真题 ]-Markdown 文档解析