题目
给定一个 N 叉树,返回其节点值的 前序遍历 。
N 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null
分隔(请参见示例)。
示例 1:
输入: root = [1,null,3,2,4,null,5,6]
输出: [1,3,5,6,2,4]
解题思路
- 二叉树的前序遍历为:根-左子树-又子树
- 这道题是N叉树,没有左、右子树,只有存放孩子节点的数组
- N叉树遍历:根-子数组
代码实现
var preorder = function(root) {
if (!root) return []
const ans = [root.val]
function traversal(root) {
for(let child of root.children) {
ans.push(child.val)
traversal(child)
}
}
traversal(root)
return ans
};
如有错误欢迎指出,欢迎一起讨论!