【LeetCode】104. 二叉樹的最大深度

問題描述

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.

給定一個二叉樹,求它的最大深度。
最大深度是從根節點到最遠葉節點的最長路徑上的節點數。
注意:葉節點是沒有子節點的節點。

給定一個二叉樹 [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7

返回的深度 depth = 3.

Python 實現

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

class 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 (left_depth+1) if left_depth > right_depth else (right_depth+1)
        

鏈接:https://leetcode.com/problems/maximum-depth-of-binary-tree/

發佈了46 篇原創文章 · 獲贊 29 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章