To the Top
File:  root - text - article - 2019 - 10 - invert-a-binary-tree.txt
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Problem, Data Structures and Algorithms, | English | Home Page | Category: Computing | 385 Views, 18270 Search Bots | 164 Words

Subscribe to Feed Burner | Browse | Archive
Hi, here's your problem today. This problem was recently asked by Twitter:

You are given the root of a binary tree. Invert the binary tree in place. That is, all left children should become right children, and all right children should become left children.

Example:


a
/ \
b c
/ \ /
d e f


The inverted version of this tree is as follows:


a
/ \
c b
\ / \
f e d


Here is the function signature:


class Node:
def __init__(self, value):
self.left = None
self.right = None
self.value = value
def preorder(self):
print self.value,
if self.left: self.left.preorder()
if self.right: self.right.preorder()

def invert(node):
# Fill this in.

root = Node('a')
root.left = Node('b')
root.right = Node('c')
root.left.left = Node('d')
root.left.right = Node('e')
root.right.left = Node('f')

root.preorder()
# a b d e c f
print "\n"
invert(root)
root.preorder()
# a c f b e d
Tags: 每日算法题, 算法, 数据结构, 面试题, Daily Problem, Data Structures and Algorithms, | English | Home Page | Cateogry: Computing | 385 Views, 18270 Search Bots | 164 Words Subscribe to Feed Burner

Related Articles

  1. [Daily Problem] Witness of The Tall People
  2. Daily Interview Problem: Min Stack
  3. Spreadsheet Columns
  4. Find Pythagorean Triplets
  5. Skip the readings, focus on problems. And use all the hints!
  6. Two Tricks of Delphi
  7. Fix Brackets
  8. Algorithm Interview: Permutations of numbers
  9. Algorithm Interview: Longest Consecutive Sequence
  10. Non-decreasing Array with Single Modification

Comments (0)

    Be the first one to comment this page !


Page Edited: May 11 2024 14:36:49 | RSS Subscription
How to Cook a Perfect Steak? | <meta name="robots" content="noindex, follow" />