zoukankan      html  css  js  c++  java
  • LeetCode--226--翻转二叉树

    问题描述:

    翻转一棵二叉树。

    示例:

    输入:

         4
       /   
      2     7
     /    / 
    1   3 6   9

    输出:

         4
       /   
      7     2
     /    / 
    9   6 3   1

    备注:
    这个问题是受到 Max Howell 原问题 启发的 :

    谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。

    方法1:(递归)

     1 class Solution(object):
     2     def invertTree(self, root):
     3         """
     4         :type root: TreeNode
     5         :rtype: TreeNode
     6         """
     7         if not root:
     8             return
     9         temp = root.left
    10         root.left = root.right
    11         root.right = temp
    12         self.invertTree(root.left)
    13         self.invertTree(root.right)
    14         return root

    there are some different

     1 class Solution(object):
     2     def invertTree(self, root):
     3         """
     4         :type root: TreeNode
     5         :rtype: TreeNode
     6         """
     7         if root == None:
     8             return root
     9         l = self.invertTree(root.left)
    10         r = self.invertTree(root.right)
    11         root.left = r
    12         root.right = l
    13         return root

    2018-09-19 15:09:02

  • 相关阅读:
    【模板】并查集
    排队布局
    list
    js获取宽度
    js获取按键
    sublime 自定义快捷代码
    file
    git add Untracked files
    git branch
    git
  • 原文地址:https://www.cnblogs.com/NPC-assange/p/9674729.html
Copyright © 2011-2022 走看看