题目描述 操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述: 二叉树的镜像定义:
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