104 二叉樹的最大深度

2021-10-05 17:18:09 字數 1100 閱讀 8714

二叉樹的最大深度

給定乙個二叉樹,找出其最大深度。

二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。

說明: 葉子節點是指沒有子節點的節點。、

樹的高度等於左右子樹高度的最大值加上1

# 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 is

none

:return

0 left = self.maxdepth(root.left)

right = self.maxdepth(root.right)

return

max(left, right)

+1

每訪問一層更新一次深度

class

solution

:def

maxdepth

(self, root)

: stack =

if root is

notnone

:(root,1)

)

maxdepth =

0while stack !=

: root,d = stack.pop(

)if root is

notnone

: maxdepth =

max(maxdepth, d)

(root.left,d+1)

)(root.right,d+1)

)return maxdepth

104 二叉樹的最大深度

給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。說明 葉子節點是指沒有子節點的節點。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回它的最大深度 3 思路 使用遞迴,遍歷左子樹右子樹,使用max找出最大的深度。defin...

104 二叉樹的最大深度

給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。說明 葉子節點是指沒有子節點的節點。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回它的最大深度 3 解題思路 採用dfs進行深度搜尋,一行算一次搜尋,輸出結果長度即可。...

104 二叉樹的最大深度

每日leetcode 24 二叉樹的最大深度 給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。說明 葉子節點是指沒有子節點的節點。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回它的最大深度 3 這道題遞迴到最後葉節點...