Leetcode 145 Binary Tree Postorder Traversal
Given a binary tree, return the postorder traversal of its nodes' values.
For example:
Given binary tree {1,#,2,3}
,
1 \ 2 / 3
return [3,2,1]
.
Note: Recursive solution is trivial, could you do it iteratively?
def postorder_traversal(root) ans, stack = [], [[false,root]] while not stack.empty? visit, node = stack.pop if node stack << [true,node] << [false,node.right] << [false,node.left] if not visit ans << node.val if visit end end ans end