题目
给定一个二叉树,判断它是否是高度平衡的二叉树。
本题中,一棵高度平衡二叉树定义为:
一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。
题解
class Solution: def isBalanced(self, root: TreeNode) -> bool: def height(root): if not root: return False leftHeight = height(root.left) rightHeight = height(root.right) if leftHeight == -1 or rightHeight == -1 or abs(leftHeight-rightHeight) > 1: return -1 return max(leftHeight, rightHeight) + 1 return height(root) != -1