- /*
- // Definition for a Node.
- class Node {
- public:
- int val;
- vector<Node*> children;
-
- Node() {}
-
- Node(int _val) {
- val = _val;
- }
-
- Node(int _val, vector<Node*> _children) {
- val = _val;
- children = _children;
- }
- };
- */
-
- class Solution {
- public:
- void helper(const Node*root,vector<int> & res)
- {
- if(root==nullptr)
- {
- return;
- }
- for(auto &ch:root->children)
- {
- helper(ch,res);
- }
- res.emplace_back(root->val);
- }
- vector<int> postorder(Node* root) {
- vector<int> res;
- helper(root,res);
- return res;
-
- }
-
- };