剑指offer-python

面试题27:二叉树的镜像

2018-06-28  本文已影响0人  小歪与大白兔

题目描述:

操作给定的二叉树,将其变换为源二叉树的镜像。

解题思路:

递归

# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    # 返回镜像树的根节点
    def Mirror(self, root):
        # write code here
        # 采用递归的思路,分别将左右子树互换,然后一直递归下去
        if not root:
            return None
        #首先记录左右子树
        p = root.left
        q = root.right
        #然后互换左右子树
        root.left = q
        root.right=p
        #然后对子树进行递归调用
        self.Mirror(root.right)
        self.Mirror(root.left)
        return root
上一篇 下一篇

猜你喜欢

热点阅读