difficulty:簡單
給定乙個 n 叉樹,找到其最大深度。
最大深度是指從根節點到最遠葉子節點的最長路徑上的節點總數。
n 叉樹輸入按層序遍歷序列化表示,每組子節點由空值分隔(請參見示例)。
示例 1:
輸入:root = [1,null,3,2,4,null,5,6]
輸出:3
示例 2:
輸入:root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null,null,14]
輸出:5
solution
層序遍歷的變種,簡單的bfs+queue。
"""
# definition for a node.
class node:
def __init__(self, val=none, children=none):
self.val = val
self.children = children
"""
class solution:
def maxdepth(self, root: 'node') -> int:
if not root: return 0
queue, res = [root], 0
while queue:
size = len(queue)
for i in range(size):
node = queue.pop(0)
for i in node.children:
res += 1
return res
leetcode 559 N叉樹的最大深度
給定乙個 n 叉樹,找到其最大深度。最大深度是指從根節點到最遠葉子節點的最長路徑上的節點總數。例如,給定乙個3叉樹 我們應返回其最大深度,3。說明 樹的深度不會超過1000。樹的節點總不會超過5000。dfs遞迴求深度 definition for a node.class node public ...
leetcode 559 N叉樹的最大深度
給定乙個 n 叉樹,找到其最大深度。最大深度是指從根節點到最遠葉子節點的最長路徑上的節點總數。小結 參考二叉樹的最大深度,注意root不為空的時候二叉樹的深度是1,不是0。definition for a node.class node object def init self,val,childr...
LeetCode 559 N叉樹的最大深度
給定乙個 n 叉樹,找到其最大深度。最大深度是指從根節點到最遠葉子節點的最長路徑上的節點總數。例如,給定乙個 3叉樹 我們應返回其最大深度,3。說明 樹的深度不會超過 1000。樹的節點總不會超過 5000。遞迴終止條件 root null時,返回0 每層遞迴需要做的事情 分別求出當前節點子節點的最...