Leetcode 94 Binary Tree Inorder Traversal

Given a binary tree, return the inorder traversal of its nodes' values.

For example:
Given binary tree {1,#,2,3},

   1

    \

     2

    /

   3

return [1,3,2].

Note: Recursive solution is trivial, could you do it iteratively?

def inorder_traversal(root)

  ans, stack = [], [[false,root]]

  while not stack.empty?

    visit, node = stack.pop

    if node

      stack << [false,node.right] << [true,node] << [false,node.left] if not visit

      ans << node.val if visit

    end

  end

  ans

end

你可能感兴趣的:(LeetCode)