leetcode 110

来源:互联网 发布:万网域名删除时间 编辑:程序博客网 时间:2024/04/29 08:13
解题思路:平衡树是一棵树中每个节点的左右子树的高度差不大于1。递归,面向对象,self。

两个函数,一个求某个节点的高度,另一个递归求书否为平衡树。

<span style="font-family:FangSong_GB2312;font-size:18px;">class Solution(object):    def isBalanced(self, root):        """        :type root: TreeNode        :rtype: bool        """        if root is None:            return True        else:            l = self.treeDepth(root.left)            r = self.treeDepth(root.right)            if abs(l-r) > 1:                return False            else:                return self.isBalanced(root.left) and self.isBalanced(root.right)            def treeDepth(self,root):        #lt,rt        if root is None:            return 0        else:            lt = self.treeDepth(root.left)            rt = self.treeDepth(root.right)            return max(lt,rt)+1</span>

0 0