「每日LeetCode」2021年2月11日

本文最后更新于:2023年3月19日 晚上

Lt590. N 叉树的后序遍历

590. N 叉树的后序遍历

给定一个 N 叉树,返回其节点值的后序遍历
例如,给定一个 3叉树 :

返回其后序遍历: [5,6,3,2,4,1].
说明: 递归法很简单,你可以使用迭代法完成此题吗?

思路

递归

按题意,递归求后续遍历即可。

解答

递归

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
* // Definition for a Node.
* function Node(val,children) {
* this.val = val;
* this.children = children;
* };
*/

/**
* @param {Node} root
* @return {number[]}
*/
var postorder = function (root) {
if (!root) return [];
if (!root.children.length) return [root.val];
return [
...root.children.reduce((a, b) => a.concat(postorder(b)), []),
root.val,
];
};