110. Balanced Binary Tree
来源:互联网 发布:最长公共子序列c语言 编辑:程序博客网 时间:2024/05/16 01:13
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
Solution 1
2ms 22.81% Recursively check the left depth and right depth of a node, absolutely not the best solution.
public class Solution { public boolean isBalanced(TreeNode root) { if(root == null){ return true; } int left = getDepth(root.left); int right = getDepth(root.right); if(Math.abs(left - right) > 1){ return false; } return isBalanced(root.left) && isBalanced(root.right); } public int getDepth(TreeNode root){ if(root == null){ return 0; } return Math.max(getDepth(root.left),getDepth(root.right)) + 1; }}
Solution2 Improvement on the solution 1
This method should be faster than the first one but I don't know why it cost more time.
21ms 3.83%
public class Solution { public boolean isBalanced(TreeNode root) { if(checkDepth(root) == -1){ return false; } return true; } public int checkDepth(TreeNode root){ if(root == null){ return 0; } int left = checkDepth(root.left); if(left == -1){ return -1; } int right = checkDepth(root.right); if(right == -1){ return -1; } if(Math.abs(left - right) > 1){ return -1; } return Math.max(checkDepth(root.left), checkDepth(root.right)) + 1; }}
0 0
- 110.Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 110. Balanced Binary Tree
- 111. Minimum Depth of Binary Tree
- 【POJ】[1611]The Suspects
- Boost Graph
- uva 991 Safe Salutations
- Python学习之面向对象
- 110. Balanced Binary Tree
- Python元编程-遗忘的远古凶兽
- quick-cocos2dx scheduler.scheduleGlobal坑
- POJ 3074 Sudoku(数独|Dancing Links精确覆盖)
- 深入安卓Package Manager和Package Installer
- Android PackageManagerService分析二:安装APK
- how to calculate the QR decomposition of a matrix
- POJ-3225 Help with Intervals-线段树/成段更新+倍增区间法
- 102. Binary Tree Level Order Traversal