判断一个树是不是平衡二叉树
来源:互联网 发布:日本对外贸易数据2015 编辑:程序博客网 时间:2024/05/22 02:18
思路分析:
树的问题都可以考虑分治的思路。
平衡二叉树,就是要求左、右子数都是平衡的,而且高度差不超过-1
给定一个二叉树,确定它是高度平衡的。对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。
样例
给出二叉树 A={3,9,20,#,#,15,7}
, B={3,#,20,15,7}
A) 3 B) 3 / \ \ 9 20 20 / \ / \ 15 7 15 7
二叉树A是高度平衡的二叉树,但是B不是
/** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.val = val; * this.left = this.right = null; * } * } */public class Solution { /** * @param root: The root of binary tree. * @return: True if this Binary tree is Balanced, or false. */ public boolean isBalanced(TreeNode root) { // write your code here return maxDepth(root)!=-1; } public int maxDepth(TreeNode root){ if(root==null){ return 0; } int left=maxDepth(root.left); int right=maxDepth(root.right); if(left==-1||right==-1||Math.abs(left-right)>1){ return -1; } return Math.max(left,right)+1; }}
阅读全文
1 0
- 判断一个树是不是二叉平衡树
- 判断一个树是不是平衡二叉树
- 判断一个树是不是平衡二叉树
- 判断一个树是不是平衡二叉树
- 判断二叉树是不是平衡
- 判断二叉树是不是平衡
- 判断二叉树是不是平衡[
- 判断二叉树是不是平衡
- 判断二叉树是不是平衡
- 判断是不是平衡二叉树
- 判断二叉树是不是平衡
- 判断二叉树是不是平衡
- java 判断一个二叉树是不是平衡二叉树
- 判断二叉树是不是平衡二叉树
- 判断二叉树是不是平衡二叉树
- 判断二叉树是不是平衡二叉树
- 判断二叉树是不是平衡二叉树
- 判断二叉树是不是平衡二叉树
- FileZilla上传文件到外网FTP服务器响应:550 Permission denied.
- Scala实战—连接oracle及mysql数据库
- overlay 如何实现跨主机通信?- 每天5分钟玩转 Docker 容器技术(52)
- Android Translucent System Bar 开发详解-实现沉浸式通知栏(通知栏与导航栏颜色相同)
- Android中轮播所用到viewPager.PageTransformer 页面滑动时候处理图片缩放效果代码
- 判断一个树是不是平衡二叉树
- Android SDK 之 InputMethodService 详解
- 网络爬虫抓包使用及通过表单请求
- 时间复杂度和空间复杂度
- Spring Ioc的基本原理及XML实现方法(下)
- [LeetCode] 583. Delete Operation for Two Strings
- 顺序表的简单实现
- Eclipse常用快捷键
- html5调用摄像头使用Getusermedia和canvas