N叉树后序遍历

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

n 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。

示例 1:

N叉树后序遍历_第1张图片

输入:root = [1,null,3,2,4,null,5,6]
输出:[5,6,3,2,4,1]
/*
// Definition for a Node.
class Node {
public:
    int val;
    vector children;

    Node() {}

    Node(int _val) {
        val = _val;
    }

    Node(int _val, vector _children) {
        val = _val;
        children = _children;
    }
};
*/

class Solution {
public:
    void my_postorder(Node* root,vector& res)
    {
        if(root==nullptr)
            return;
        else
        {
            for(size_t i=0;i< root->children.size();i++)
            {
                my_postorder(root->children[i],res);
            }
            res.push_back(root->val);
        }
    }
    vector postorder(Node* root) {
        vector res;
        my_postorder(root,res);
        return res;
    }
};

你可能感兴趣的:(算法,数据结构,leetcode)