劍指Offer Python 二叉樹的映象

2021-08-21 23:47:37 字數 662 閱讀 3605

題目:二叉樹的映象

操作給定的二叉樹,將其變換為源二叉樹的映象。

思路:遇到樹,用遞迴總沒錯。首先將root的左右子樹交換,再對左子樹進行遞迴映象轉換,然後對右子樹進行遞迴映象轉換。直到當前函式root為空,遞迴結束。

**

# -*- coding:utf-8 -*-

# class treenode:

# def __init__(self, x):

# self.val = x

# self.left = none

# self.right = none

class

solution:

# 返回映象樹的根節點

defmirror

(self, root):

# write code here

if root is

none:

return

root.left, root.right = root.right, root.left

self.mirror(root.left)

self.mirror(root.right)

return root

劍指Offer Python 重建二叉樹

題目 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。思路 遞迴實現。主要思路就是通過前序遍歷和中序遍歷確定一棵樹。coding utf 8 class treenode def ...

平衡二叉樹 劍指offer python

第一次寫是從上向下遍歷,但是這會導致很多不必要的判斷,如下 coding utf 8 class treenode def init self,x self.val x self.left none self.right none class solution def isbalanced solu...

劍指offer Python 對稱的二叉樹

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。遞迴實現 class treenode def init self,x self.val x self.left none self.right none class solution de...