Day2 二叉树的镜像【树】

题目:
请完成一个函数,输入一个二叉树,该函数输出它的镜像。
leetcode原题链接

思路:
递归。
当此时根节点不为空时,交换左右节点。
再对交换后左右节点各自的左右节点进行交换,直至当前节点为空
返回root

代码:
时间复杂度:O(n)【n个元素】
空间复杂度:O(m)【m为二叉树的层数】

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def mirrorTree(self, root: TreeNode) -> TreeNode:
        if root is not None:
            root.left,root.right=root.right,root.left
            self.mirrorTree(root.left)
            self.mirrorTree(root.right)
            return root

猜你喜欢

转载自blog.csdn.net/weixin_47128888/article/details/112488040