二叉树的镜像

题目描述
操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:
二叉树的镜像定义:源二叉树
8
/
6 10
/ \ /
5 7 9 11
镜像二叉树
8
/
10 6
/ \ /
11 9 7 5

画图分析后想到思路大概是
运用递归 交换左右子树
但是由于对递归掌握不是很好,具体实现还是看了别人的代码后才有了思路

public class Solution {
    public void Mirror(TreeNode root) {
        if(root == null){
            return ;
        }
        if(root.left == null && root.right == null){
            return ;
        }
        
        
       //交换左右子树
        TreeNode tmp = null;
        tmp = root.right;
        root.right = root.left;
        root.left = tmp;
        
        //递归
        if(root.left != null){
            Mirror(root.left);
        }
         if(root.right != null){
            Mirror(root.right);
        }
    }
}

相关知识
Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。

以下是无返回值的情况

public void test1() { 
       System.out.println("---------无返回值类型的return语句测试--------"); 
       for (int i = 1; ; i++) { 
           if (i == 4) return; 
           System.out.println("i = " + i); 
       } 
   }
发布了24 篇原创文章 · 获赞 0 · 访问量 168
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览