full handwritten explanation + code - Python3
\n\n\n\n\tclass Node:\n    def init(self, val=None, children=None):\n        self.val = val\n        self.children = children\n\n\tclass Solution:\n    def trav
![image](https://assets.leetcode.com/users/images/bbf7b63e-bbd5-4fa7-9cc9-65600dfffb4b_1598444162.944711.png)\n\n![image](https://assets.leetcode.com/users/images/6c1d96f9-41ad-4f89-a442-171902268fab_1598444177.752263.png)\n\n\tclass Node:\n    def __init__(self, val=None, children=None):\n        self.val = val\n        self.children = children\n\n\tclass Solution:\n    def traverse(self, root : \'Node\', l) -> List[int] :\n        if root is None :\n            return \n        \n        for child in root.children : \n            self.traverse(child, l)\n        l.append(root.val)\n        return l\n    \n    def postorder(self, root: \'Node\') -> List[int]:\n        self.post_ordered_list = self.traverse(root, [])\n        return self.post_ordered_list\n
[]