[leetcode: Python]104. Maximum Depth of Binary Tree

来源:互联网 发布:淘宝怎么设置快递费 编辑:程序博客网 时间:2024/05/29 16:28

题目:
Given a binary tree, find its maximum depth.

The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

方法一:性能65ms

# Definition for a binary tree node.# class TreeNode(object):#     def __init__(self, x):#         self.val = x#         self.left = None#         self.right = Noneclass Solution(object):    def maxDepth(self, root):        """        :type root: TreeNode        :rtype: int        """        if root == None:            return 0        left_depth = self.maxDepth(root.left)        right_depth = self.maxDepth(root.right)        return max(left_depth, right_depth) + 1

方法二:性能52ms

# Definition for a binary tree node.# class TreeNode(object):#     def __init__(self, x):#         self.val = x#         self.left = None#         self.right = Noneclass Solution(object):    def maxDepth(self, root):        """        :type root: TreeNode        :rtype: int        """        if not root:            return 0        return 1 + max(self.maxDepth(root.left), self.maxDepth(root.right))

两种方法有本质区别吗?为什么有性能差异的。。。

0 0