给定一个N叉树,返回其节点值的后序遍历。
例如,给定一个 3叉树 :
返回其后序遍历:
[5,6,3,2,4,1].
代码实现:
/*
// Definition for a Node.
class Node {
public int val;
public List<Node> children;
public Node() {}
public Node(int _val,List<Node> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
private List<Integer> result = new ArrayList<Integer>();
public List<Integer> postorder(Node root) {
if (root == null) return result;
if (root.children.size() > 0) {
for (Node ch : root.children) {
postorder(ch);
}
}
result.add(root.val);
return result;
}
}