559. N 叉树的最大深度
题目描述
解题思路
1、maxDepth()定义为以当前节点的最大深度上的叶子节点;
2、想象成二叉树的后序遍历,只是把左右子树变成了for循环遍历孩子节点。
代码实现
"""
# 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
res = 1
for child in root.children:
node_nums = self.maxDepth(child)
res = max(res, node_nums + 1)
return res
参考文献
1、官方题解