590. N叉树的后序遍历

给定一个 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 {
    public List<Integer> postorder(Node root) {
        List<Integer> res = new ArrayList<>();
        postOrder(res,root);
        return res;
    }
    public void postOrder(List<Integer> res, Node root) {
        if(root == null) return;
        for(int i=0; i<root.children.size(); i++) {
            postOrder(res,root.children.get(i));
        }
        res.add(root.val);
    }
}

猜你喜欢

转载自www.cnblogs.com/Roni-i/p/10456602.html