LeetCode 判断一个数是否为平衡二叉树 Balanced Binary Tree
2014-01-23 05:48
369 查看
简单题,以前居然没有贴上来
Again:
package Level1; import Utility.TreeNode; /** * Balanced Binary Tree 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. * */ public class S110 { public static void main(String[] args) { } public boolean isBalanced(TreeNode root) { if(root == null){ return true; } // 如果子树高度差大于1,则不平衡 if(Math.abs(depth(root.left)-depth(root.right)) > 1){ return false; } // 递归检查左子树和右子树的平衡性 return isBalanced(root.left) && isBalanced(root.right); } // 帮助方法,返回树的高度 private int depth(TreeNode root){ if(root == null){ return 0; } return 1 + Math.max(depth(root.left), depth(root.right)); } }
Again:
/** * 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) { if(root == null){ return true; } if(root.left==null && root.right==null){ return true; } if(Math.abs(depth(root.left)-depth(root.right)) > 1){ return false; } return isBalanced(root.left) && isBalanced(root.right); } public int depth(TreeNode root){ if(root==null){ return 0; } return 1+Math.max(depth(root.left), depth(root.right)); } }
相关文章推荐
- LeetCode(Balanced Binary Tree ) 判断一个二叉树是否为平衡二叉树
- Leetcode#110. Balanced Binary Tree(判断是否是平衡二叉树)
- Balanced Binary Tree 判断是否平衡二叉树 @LeetCode
- 【LeetCode】110. Balanced Binary Tree-判断是否为平衡二叉树
- leetcode 110. Balanced Binary Tree 判断是否是一颗平衡二叉树
- LeetCode——Balanced Binary Tree(判断是否平衡二叉树)
- leetcode_110. Balanced Binary Tree 判断一棵二叉树是否为平衡二叉树
- LeetCode:Balanced Binary Tree(平衡二叉树的判断)
- 110. Balanced Binary Tree | 判断是否是平衡二叉树
- Balanced Binary Tree:判断一棵树是否为平衡二叉树
- leetcode 110. Balanced Binary Tree(平衡二叉树的判断) DFS深度优先遍历
- Balanced Binary Tree 判断是否为平衡二叉树 解法集合
- 剑指offer 面试题39:判断平衡二叉树(LeetCode 110. Balanced Binary Tree) 题解
- LeetCode:Balanced Binary Tree(判断是否为二叉平衡树)
- LeetCode(Validate Binary Search Tree) 判断一个二叉树是否是二叉搜索树
- Leetcode:Validate Binary Tree 判断一个二叉树是否为二叉搜索树
- 【平衡二叉树】leetcode 110. Balanced Binary Tree
- 【LeetCode】Balanced Binary Tree,平衡二叉树
- Leetcode Balanced Binary Tree 平衡二叉树
- [LeetCode] Balanced Binary Tree 平衡二叉树