牛客刷题:二叉树的镜像(编程题)

题目描述
操作给定的二叉树,将其变换为源二叉树的镜像。
二叉树的镜像定义:源二叉树
    8
   / \
   6   10
   /\ /\
  5   7 9  11
镜像二叉树
    8
   / \
   10   6
   /\ /\
  11  9 7  5
  
解:
class Solution:
# 返回镜像树的根节点
 def Mirror(self, root):
  # write code here
  if root:
   root.left,root.right=root.right,root.left
   self.Mirror(root.right)
   self.Mirror(root.left)

总结:
1.采用递归的方法,进行镜像反转
2.首先依然还是一步一步的查找当前节点的左孩子,右孩子。然后进行交换。
3.然后对孩子节点的左右孩子进行反转,这里谁先谁后,其实最后的答案并没有区别。

你可能感兴趣的:(牛客)