N叉树的后序遍历

给定一个 N 叉树,返回其节点值的后序遍历。

例如,给定一个 3叉树 :

 

 

返回其后序遍历: [5,6,3,2,4,1].

 

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/n-ary-tree-postorder-traversal
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

/*
// Definition for a Node.
class Node {
    public int val;
    public List<Node> children;

    public Node() {}

    public Node(int _val) {
        val = _val;
    }

    public Node(int _val, List<Node> _children) {
        val = _val;
        children = _children;
    }
};
*/

class Solution {
    List res=new ArrayList();
    public List<Integer> postorder(Node root) {
        if(root ==null) return res;
        help(root);
        return res;
    }
    private void help(Node node){
        if(node==null) return ;
        if(node.children!=null){
            int s=node.children.size();
            for(int i=0;i<s;i++)
            help(node.children.get(i));
        }
        res.add(node.val);
    }
}

类似二叉树的后序遍历,只是需要对根节点的每一个节点都递归调用;重点是取出每一根节点的孩子节点

posted on 2020-08-04 18:32  九七97  阅读(354)  评论(0编辑  收藏  举报

导航