1. 程式人生 > 其它 >二叉樹的映象 劍指offer python版

二叉樹的映象 劍指offer python版

技術標籤:劍指offer程式設計題(python)

目錄


題目

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

示例1
輸入

源二叉樹:
在這裡插入圖片描述

返回值

映象二叉樹
在這裡插入圖片描述

一、思路

【思路】

利用遞迴,從底向上改變左右子樹的指標

【邊界情況】

  • 函式輸入引數為空

二、程式碼

# -*- coding:utf-8 -*-
class Solution:
    # 返回映象樹的根節點
    def Mirror(self, root):
        if not root:return None
        left=self.Mirror(
root.left) right=self.Mirror(root.right) root.left=right root.right=left return root

三、總結

此處的遞迴像是把大問題拆解成一個個小問題去解決,先去解決最底層的節點,然後自下而上完成映象
如果採用迴圈遍歷的方式,我們可以參考層次遍歷,從頂至下去完成映象