public class 面试题19_二叉树的镜像 {
/*
题目描述
操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:
二叉树的镜像定义:源二叉树
8
/ \
6 10
/ \ / \
5 7 9 11
镜像二叉树
8
/ \
10 6
/ \ / \
11 9 7 5
笔记
收藏
纠错
上一题 下一题
讨论
排行
我的提交
Java(javac 1.8)重置
*/
public static void main(String[] args) {
BinaryTreeNode root1=new BinaryTreeNode(8);
BinaryTreeNode sec=root1.left=new BinaryTreeNode(8);
root1.right=new BinaryTreeNode(7);
sec.left=new BinaryTreeNode(9);
BinaryTreeNode third=sec.right=new BinaryTreeNode(2);
third.left=new BinaryTreeNode(4);
third.right=new BinaryTreeNode(7);
//root1=null;
bianLiQian(root1);
BinaryTreeNode root2=new BinaryTreeNode(8);
root2.left=new BinaryTreeNode(9);
root2.right=new BinaryTreeNode(2);
System.out.println();
bianLiQian(root2);
System.out.println();
jingXiangQian(root1);
bianLiQian(root1);
}
public static void bianLiQian(BinaryTreeNode root1){
if(root1!=null){
System.out.print(root1.data+" ");
bianLiQian(root1.left);
bianLiQian(root1.right);
}
}
public static void jingXiangQian(BinaryTreeNode root){
if(root!=null){
BinaryTreeNode temp;
temp=root.left;
root.left=root.right;
root.right=temp;
//System.out.print(root.data+" ");
jingXiangQian(root.left);
jingXiangQian(root.right);
}
}
}