Python, easy to understand iterative solution
``` """ Definition for a Node. class Node(object):     def init(self, val, children):         self.val = val         self.children = children """ class Solution
```
"""
# Definition for a Node.
class Node(object):
    def __init__(self, val, children):
        self.val = val
        self.children = children
"""
class Solution(object):
    def postorder(self, root):
        """
        :type root: Node
        :rtype: List[int]
        """
        res = []
        
        stack = [root]
        
        while stack:
            top = stack[-1]
            if top is None:
                stack.pop()
                continue
            if not top.children:
                res.append(top.val)
                stack.pop()
                continue
            
            stack.append(top.children.pop(0))
        
        return res
```
[]