剑指offer---18---(递归)(先序遍历)二叉树的镜像

 
题意
操作给定的二叉树,将其变换为源二叉树的镜像。
 
 
分析
-----使用先序遍历的方式,先将两个子树交换位置,然后递归两个子树
交换两个子树的时候,因为子树的子树是连接在子树下面的,也就是说是相对固定不动的,交换的时候就会跟着交换。
 
代码
public class Solution {
    public void Mirror(TreeNode root) {
        if(root==null)return;
        if(root.left==null && root.right==null)return;
      //先序交换两个子树
        TreeNode temp = root.left;
        root.left = root.right;
        root.right = temp;
        //如果两个子树不为空的话继续进行递归处理
        if(root.left!=null)Mirror(root.left);
        if(root.right!=null)Mirror(root.right);
    }
}

猜你喜欢

转载自www.cnblogs.com/buptyuhanwen/p/9377081.html