剑指offer面试题27. 二叉树的镜像(递归)

题目描述

请完成一个函数,输入一个二叉树,该函数输出它的镜像。
剑指offer面试题27. 二叉树的镜像(递归)_第1张图片

思路

详见链接

代码

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

复杂度

时间复杂度 O(N): 其中 N 为二叉树的节点数量,建立二叉树镜像需要遍历树的所有节点,占用 O(N)时间。
空间复杂度 O(N): 最差情况下(当二叉树退化为链表),递归时系统需使用 O(N) 大小的栈空间。

你可能感兴趣的:(剑指offer)