def main(): tree = BST() N = 10 _set = set([random.randint(1, N * N) for _ in range(N)]) for x in _set: tree.insert(x, "") tree.pretty_print() postorder = [node.key for node in tree.postorder_nodes()] print postorder postorder_iterator = PostorderIterator(tree.root) idx = 0 while postorder_iterator.has_next(): postorder_iterator.next() is postorder[idx] idx += 1