剑指offer 18.面试思路 二叉树的镜像

题目描述

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

输入描述:

二叉树的镜像定义:源二叉树 
    	    8
    	   /  \
    	  6   10
    	 / \  / \
    	5  7 9 11
    	镜像二叉树
    	    8
    	   /  \
    	  10   6
    	 / \  / \
    	11 9 7  5

解题思路使用递归将左右结点交换

代码如下:


public class Mirror {
public void Mirror(TreeNode root) {
if (root==null) {
root=null;
}else {


//交换左右结点
TreeNode node=root.left;

root.left=root.right;

root.right=node;

if (root.left!=null) {
Mirror(root.left);//递归
}
if (root.right!=null) {
Mirror(root.right);//递归
}

}
}

class TreeNode {
int val = 0;
TreeNode left = null;
TreeNode right = null;

public TreeNode(int val) {
this.val = val;

}

}
}




posted @ 2019-05-18 18:01  Transkai  阅读(237)  评论(0编辑  收藏  举报