1.問題描述
翻轉一棵二叉樹。
示例:
輸入:
4
/ \
2 7
/ \ / \
1 3 6 9
輸出:
4
/ \
7 2
/ \ / \
9 6 3 1
備註:
這個問題是受到 Max Howell 的 原問題 啓發的 :
谷歌:我們90%的工程師使用您編寫的軟件(Homebrew),但是您卻無法在面試時在白板上寫出翻轉二叉樹這道題,這太糟糕了。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/invert-binary-tree
2.python求解實現
我都覺得很簡單的一個題,那就是很簡單了
思路:如果根結點不爲空,就把他的左右節點交換,然後遞歸遍歷左右子樹,執行交換操作
class Solution(object):
def invertTree(self, root):
"""
:type root: TreeNode
:rtype: TreeNode
"""
if root is not None:
temp = root.left
root.left = root.right
root.right = temp
self.invertTree(root.left)
self.invertTree(root.right)
return root
恩,就是這樣,這篇好像米有啥要補充的啦