题目:
给定一个 N 叉树,返回其节点值的*前序遍历*。
例如,给定一个 `3叉树` :

返回其前序遍历: `[1,3,5,6,2,4]`。
题目的理解:
一开始感觉N叉树的children怎么设计好呢,然后想到直接设计成一个数组,那么就可以解决了。
python实现
from typing import List
# Definition for a Node.
class Node:
def __init__(self, val=None, children=None):
self.val = val
self.children = children
class Solution:
def preorder(self, root: Node) -> List[int]:
nums = list()
self.traverse(nums, root)
return nums
def traverse(self, nums: List[int], node: Node):
if node is None:
return
nums.append(node.val)
for child_node in node.children:
self.traverse(nums, child_node)
提交

还是使用了递归方法,这个方法比较简单。
// END 越在家待,越不想工作。
网友评论