平衡二叉树 :
[](剑指 Offer 55 - II. 平衡二叉树 - 力扣(LeetCode))
判断平衡二叉树需要判断每个结点的左右子树深度相差是否大于一 。所以要单独写一个统计树高度的函数 。
var depth = function(node){ // 统计树高度的函数
if(node===null) return 0;
return Math.max(depth(node.left),depth(node.right)) + 1;
}
var isBalanced = function(root) {
if(root===null) return true;
else
{
var left = depth(root.left);
var right = depth(root.right) // 分别统计左右子树的高度
if(left-right > 1||right-left>1) return false;
else return true&&isBalanced(root.left)&&isBalanced(root.right);
// 对每个结点都进行判断
}
};