diff --git a/tries/trie_postorder.py b/tries/trie_postorder.py new file mode 100644 index 0000000..992e66c --- /dev/null +++ b/tries/trie_postorder.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# author: bt3gl + + +def postorder(self, root: 'Node') -> List[int]: + + if root is None: + return [] + + stack, result = [root, ], [] + + while stack: + node = stack.pop() + if node is not None: + result.append(node.val) + for c in node.children: + stack.append(c) + + return result[::-1] +