給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。
本題中,一棵高度平衡二叉樹定義為:
乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1:
給定二叉樹[3,9,20,null,null,15,7]
3
/ \9 20
/ \
15 7
返回true
。
示例 2:
給定二叉樹[1,2,2,3,3,null,null,4,4]
1
/ \2 2
/ \3 3
/ \4 4
返回false
。
class treenode
}class solution
}public boolean isbalanced(treenode root)
public node isbst(treenode root)
node left = isbst(root.left);
node right = isbst(root.right);
/** 判斷一棵樹是不是平衡二叉樹,有以下條件
* 1.左子樹或右子樹不是平衡二叉樹,那麼這棵樹不是平衡二叉樹
* 2.左右字數高度差大於1,不是平衡二叉樹
*/if(!(left.isb && right.isb))
if(math.abs(left.depth - right.depth) > 1)
return new node(math.max(left.depth, right.depth)+1, true);
}}
110 平衡二叉樹
給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回 true 示例 2 給定二叉樹 1,2,2,3,3,null,n...
110 平衡二叉樹
給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回 true 思路 注釋 private boolean isbala...
110 平衡二叉樹
給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回 true 示例 2 給定二叉樹 1,2,2,3,3,null,n...