剑指offer之二叉树的镜像(Python)

来源:互联网 发布:html5游戏前景知乎 编辑:程序博客网 时间:2024/05/22 22:43

题目描述

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

输入描述:

二叉树的镜像定义:源二叉树         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 = Nonedef function(root):    if root:        root.left,root.right = root.right,root.left        if root.left:            function(root.left)        if root.right:            function(root.right)




原创粉丝点击