Balanced Binary Tree
2013-04-21 20:03
309 查看
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public boolean isBalanced(TreeNode root) { // Start typing your Java solution below // DO NOT write main() function if(root==null)return true; return valid(root); } private boolean valid(TreeNode root){ if(root==null)return true; int leftdep = height(root.left); int rightdep = height(root.right); boolean c = (leftdep-rightdep<=1&&leftdep-rightdep>=-1); return c&&valid(root.left)&&valid(root.right); } private int height(TreeNode root){ if(root==null)return 0; if(root.left==null&&root.right==null) return 1; if(root.left==null)return height(root.right)+1; if(root.right==null)return height(root.left)+1; return Math.max(height(root.left),height(root.right))+1; } }
相关文章推荐
- Leetcode NO.110 Balanced Binary Tree
- 110. Balanced Binary Tree
- Balanced Binary Tree(Java)
- leetcode之Balanced Binary Tree
- Convert Sorted List to Balanced Binary Search Tree leetcode
- LeetCode 110 Balanced Binary Tree
- leetcode 110. Balanced Binary Tree-平衡二叉树|深度遍历
- [LeetCode]Balanced Binary Tree
- Balanced Binary Tree——数是否是平衡,即任意节点左右字数高度差不超过1
- LeetCode Balanced Binary Tree
- LeetCode-Balanced Binary Tree
- Leetcode 110 Balanced Binary Tree
- Leetcode Balanced Binary Tree
- 【LeetCode】 110. Balanced Binary Tree
- Balanced Binary Tree 判断是否平衡二叉树 @LeetCode
- 110. Balanced Binary Tree
- leetcode-110. Balanced Binary Tree
- leetcode Balanced Binary Tree
- Balanced Binary Tree
- LeetCode题解——Balanced Binary Tree