E-104. Maximum Depth of Binary Tree

E

简单的题, 可以看出几种模板写法, 和538我自己的两种写法类似:

# 1 我的写法
class Solution:
    def maxDepth(self, root: TreeNode) -> int:
        max_depth=self.get_max_depth(root, 0)
        return max_depth
    
    def get_max_depth(self, root, max_depth):
        if not root:
            return max_depth
        else:
            max_depth_r=self.get_max_depth(root.right, max_depth)
            max_depth_l=self.get_max_depth(root.left, max_depth)
            return max(max_depth_r,max_depth_l)+1
# 2 LC标答           
class Solution:
    def maxDepth(self, root):
        if not root: 
            return 0 
        else: 
            left_height = self.maxDepth(root.left) 
            right_height = self.maxDepth(root.right) 
            return max(left_height, right_height) + 1 

# 3 LC标答2
class Solution:
    def maxDepth(self, root):
        if root: 
            left_height = self.maxDepth(root.left) 
            right_height = self.maxDepth(root.right) 
            return max(left_height, right_height) + 1   
        else:
            return 0

Last updated

Was this helpful?