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

Posted buptyuhanwen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指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);
    }
}

以上是关于剑指offer---18---(递归)(先序遍历)二叉树的镜像的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 剑指Offer 18[链表 递归] HERODING的LeetCode之路

剑指offer18:操作给定的二叉树,将其变换为源二叉树的镜像。

剑指offer 18. 二叉树的镜像

重建二叉树-剑指Offer

[剑指Offer] 18.二叉树的镜像

二叉树中某一值的路径之 先序遍历 + 二叉搜索树转化为循环双向链表 之 中序遍历