104 二叉樹的最大深度

2022-09-18 06:27:35 字數 776 閱讀 4701

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

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

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

示例:

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

3

/ \9 20

/ \

15 7

返回它的最大深度 3 。

有兩種解法

求出每乙個子樹的深度,依次往上遞加1,可以用遞迴解決。

class solution 

return 1 + math.max(maxdepth(root.left), maxdepth(root.right));

}}

每一層每一層的遍歷,每遍歷一層,深度加一。

廣度優先遍歷的步驟是用乙個棧儲存頭結點,接下來彈出棧頂,再將棧頂的左右節點入棧(先入右,再入左,這樣訪問是先左再右),直到棧空為止。

class solution 

stackq = new stack<>();

q.add(root);

int depth = 0;

while(q != null)

if(node.left != null)

q.pop();}}

return depth;

}}

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 這道題遞迴到最後葉節點...