1. 程式人生 > >劍指offer第55.5:平衡二叉樹

劍指offer第55.5:平衡二叉樹

題目描述

輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹。

class Solution:
    def IsBalanced_Solution(self, pRoot):
        # write code here
        if not pRoot:
            return True
        if abs(self.maxDepth(pRoot.left)-self.maxDepth(pRoot.right))>1:
            return False
        return  self.IsBalanced_Solution(pRoot.left) and  self.IsBalanced_Solution(pRoot.right)

    def maxDepth(self, pRoot):
        if not pRoot :
            return 0
        return max(self.maxDepth(pRoot.left), self.maxDepth(pRoot.right)) + 1