Balanced Binary Tree
来源:互联网 发布:centos源 编辑:程序博客网 时间:2024/05/11 18:36
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.
Version1: traverse each node only one time, the complexity is O(N)
public class Solution { public int levels(TreeNode root) { if(root==null) return 0; int lheight = levels(root.left); if(lheight==-1) return -1; int rheight = levels(root.right); if(rheight==-1) return -1; if(Math.abs(lheight-rheight)>1) return -1; else return Math.max(lheight, rheight)+1; } public boolean isBalanced(TreeNode root) { if(levels(root)==-1) return false; else return true; }}
Version2: traverse each node repeatedly and the complexity is O(N2)
public class Solution { public int levels(TreeNode root) { if(root==null) return 0; int lheight = levels(root.left) + 1; int rheight = levels(root.right) + 1; return Math.max(lheight, rheight); } public boolean isBalanced(TreeNode root) { if(root==null) return true; int lheight = levels(root.left); int rheight = levels(root.right); if(Math.abs(lheight-rheight)>1) return false; return isBalanced(root.left) && isBalanced(root.right); }}
0 0
- Balanced binary tree 扩展
- LeetCode: Balanced Binary Tree
- [LeetCode]Balanced Binary Tree
- LeetCode Balanced Binary Tree
- [Leetcode] Balanced Binary Tree
- LeetCode : Balanced Binary Tree
- LeetCode Balanced Binary Tree
- [LeetCode] Balanced Binary Tree
- Balanced Binary Tree
- Balanced Binary Tree
- 【leetcode】Balanced Binary Tree
- Balanced Binary Tree
- [LeetCode]Balanced Binary Tree
- Balanced Binary Tree
- Balanced Binary Tree
- [LeetCode] Balanced Binary Tree
- [Leetcode]Balanced Binary Tree
- [leetcode]Balanced Binary Tree
- Java - 如何删除文件夹
- 如何区分ios设备
- IOS 中的CGFloat、CGPoint、CGSize和CGRect
- 启用和自定义 ASP.NET Web API 服务的安全性
- 视频图像学习[2]--关于ffmpeg出现muxing overhead的分析
- Balanced Binary Tree
- automake
- cocos2d-iphone 2.1开发之各种常见错误(持续更新。。。)
- Rhythmbox中文乱码解决办法
- boost::interprocess 内存映射文件代替 fstream用法
- java自带的控制面板
- 说一说 framebuffer,从前,现在.......
- webapi 返回数据类型控制(json,xml)
- [leet code] Swap Nodes in Pairs