判断平衡二叉树
来源:互联网 发布:女鬼桂缘捏脸数据 编辑:程序博客网 时间:2024/04/29 07:55
题目:
输入一棵二叉树,判断该二叉树是否是平衡二叉树。
解题思路:
首先设置一个函数用来判断树的高度,有了这个函数,我们就可以用来判断二叉树某一个分支的高度。接下来需要了解的是平衡二叉树即对于任意一个节点来说,起左右子树的高度差的绝对值小于等于1,我们可以用上面的函数判断左右子树的高度,如果高度差大于1则返回false,否则递归地判断左右子树。
代码:
public boolean IsBalanced(TreeNode root) { if (root == null) { return true; } int left = TreeDepth(root.left); int right = TreeDepth(root.right); if (Math.abs(left - right) > 1) { return false; } return isBalanced(root.left) && isBalanced(root.right);}private int TreeDepth(TreeNode root) { if (root == null) { return 0; } int left = TreeDepth(root.left); int right = TreeDepth(root.right); return left > right? left+1 : right+1;}
-----------EOF-----------
0 0
- 判断平衡二叉树
- 判断二叉树平衡
- 平衡二叉树判断
- 判断平衡二叉树
- 判断平衡二叉树
- 平衡二叉树判断
- 判断平衡二叉树
- 判断平衡二叉树
- 平衡二叉树判断
- 判断平衡二叉树
- 判断平衡二叉树是否平衡
- 判断二叉树是否平衡
- 判断二叉树是不是平衡
- 判断二叉树是不是平衡
- 判断二叉树是否平衡
- 判断二叉树是不是平衡[
- 平衡二叉树的判断
- 判断二叉树是不是平衡
- Linux ssh登录命令
- MongoDB 数据库安装简介
- hdu2955(多重背包变形)
- myeclipe 快捷键
- 阿里云域名、负载均衡的配置使用(一整套java服务搭建)
- 判断平衡二叉树
- JDK中w3c.dom包下的类
- 重装win7系统后打开截图工具显示“截图工具当前未在计算机上运行”怎么办
- Ubuntu 配置java环境
- android中Paint的基本使用
- 设计模式之单例模式
- Mac搭建nginx+rtmp服务器
- JavaWeb-Servlet增加源码
- 1004. 成绩排名