LeetCode——Balanced Binary Tree
Description:
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.
判断是不是二叉平衡树,递归还是递归。
/** * Definition for a binary tree node. * 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; int l = getDepth(root.left, 1); int r = getDepth(root.right, 1); if(Math.abs(l-r) > 1) { return false; } else { return isBalanced(root.left) && isBalanced(root.right); } } public int getDepth(TreeNode root, int depth) { if(root == null) { return depth; } else { return Math.max(getDepth(root.left, depth+1), getDepth(root.right, depth+1)); } } }
作者:Pickle
声明:对于转载分享我是没有意见的,出于对博客园社区和作者的尊重一定要保留原文地址哈。
致读者:坚持写博客不容易,写高质量博客更难,我也在不断的学习和进步,希望和所有同路人一道用技术来改变生活。觉得有点用就点个赞哈。