码迷,mamicode.com
首页 > 其他好文 > 详细

剑指offer:二叉树的镜像

时间:2019-04-24 13:27:53      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:not   镜像树   node   init   def   treenode   二叉树的镜像   str   return   

题目描述
操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:
二叉树的镜像定义:
```源二叉树
8
/ \
6 10
/ \ / \
5 7 9 11
镜像二叉树
8
/ \
10 6
/ \ / \
11 9 7 5

class TreeNode:
def init(self, x):
self.val = x
self.left = None
self.right = None

class Solution:

返回镜像树的根节点

def Mirror(self, root):
    if not root:
        return None
    # 如果当前节点不是叶子节点,那么交换它的左右节点
    if root.left or root.right:
        root.left, root.right = root.right, root.left

    # 对交换后的左右节点执行同样的操作
    root.left = self.Mirror(root.left)
    root.right = self.Mirror(root.right)

    return root

剑指offer:二叉树的镜像

标签:not   镜像树   node   init   def   treenode   二叉树的镜像   str   return   

原文地址:https://blog.51cto.com/jayce1111/2383785

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!