[Tree]104. Maximum Depth of Binary Tree

  • 分类:Tree/BackTracking
  • 时间复杂度: O(n) 这种把树的节点都遍历一遍的情况时间复杂度为O(n)
  • 空间复杂度: O(h) 树的节点的深度

104. Maximum Depth of Binary Tree

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.

Note: A leaf is a node with no children.

Example:

Given binary tree [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7

return its depth = 3.

代码:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def maxDepth(self, root: 'TreeNode') -> 'int': 
        
        if root==None:         
            return 0   
        
        res=max(self.maxDepth(root.left),self.maxDepth(root.right))+1
        
        return res

讨论:

1.这道题是道简单的好题,思路就是现在的深度为左边和右边深度的最大值再加上+1

你可能感兴趣的:([Tree]104. Maximum Depth of Binary Tree)