Invert a binary tree.
4 / \ 2 7 / \ / \1 3 6 9
to
4 / \ 7 2 / \ / \9 6 3 1
递归实现
def invert_tree(root) root.right, root.left = invert_tree(root.left), invert_tree(root.right) if root rootend
循环实现
def invert_tree(root) return if not root stack = [root] while not stack.empty? if node = stack.pop node.left, node.right = node.right, node.left stack << node.left << node.right end end rootend