【java 面试100】15 :输入一颗二元查找树,将该树转换为它的镜像
来源:互联网 发布:mac 广告拦截插件 编辑:程序博客网 时间:2024/05/29 20:02
题目:输入一颗二元查找树,将该树转换为它的镜像,
即在转换后的二元查找树中,左子树的结点都大于右子树的结点。
用递归和循环两种方法完成树的镜像转换。
例如输入:
8
/ /
6 10
// //
5 7 9 11
输出:
8
/ /
10 6
// //
11 9 7 5
public class MirrorBST {public void mirror(BSTreeNode root){if(root==null)return;BSTreeNode p=root.lefTreeNode;root.lefTreeNode=root.rightTreeNode;root.rightTreeNode=p;mirror(root.lefTreeNode);mirror(root.rightTreeNode);}public void midTraverse(BSTreeNode root){if(root==null) return;midTraverse(root.lefTreeNode);System.out.print(root.value+" ");midTraverse(root.rightTreeNode);}public static void main(String[] args) {BSTreeNode root=new BSTreeNode(8);BSTreeNode p6=new BSTreeNode(6);BSTreeNode p10=new BSTreeNode(10);BSTreeNode p5=new BSTreeNode(5);BSTreeNode p7=new BSTreeNode(7);BSTreeNode p9=new BSTreeNode(9);BSTreeNode p11=new BSTreeNode(11);root.lefTreeNode=p6;root.rightTreeNode=p10;p6.lefTreeNode=p5;p6.rightTreeNode=p7;p10.lefTreeNode=p9;p10.rightTreeNode=p11;MirrorBST mirrorBST=new MirrorBST();mirrorBST.midTraverse(root);mirrorBST.mirror(root);System.out.println();mirrorBST.midTraverse(root);}}class BSTreeNode{int value;BSTreeNode lefTreeNode;BSTreeNode rightTreeNode;public BSTreeNode(int data){this.value=data;}}
结果:5 6 7 8 9 10 11
11 10 9 8 7 6 5
- 【java 面试100】15 :输入一颗二元查找树,将该树转换为它的镜像
- 15、输入一颗二元查找树,将该树转换为它的镜像
- 15 输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像,
- 输入一颗二元查找树,将该树转换为它的镜像
- 【算法】输入一颗二元查找树,将该树转换为它的镜像
- 15.输入一颗二元查找树,将该树转换为它的镜像
- 15.输入一颗二元查找树,将该树转换为它的镜像
- No15、输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- No15_输入一颗二元查找树,将该树转换为它的镜像,
- 输入一颗二元查找树,将该树转换为它的镜像
- 13.输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- 输入一颗二元查找树,将该树转换为它的镜像
- SharePoint2010- My Site Exception Your personal site cannot be created
- linux内核启动地址的确定
- 嵌入式C常用语法
- Linux压缩 解压缩
- 大学中教与学的几个话题
- 【java 面试100】15 :输入一颗二元查找树,将该树转换为它的镜像
- eclipse离线安装插件(ADT)
- IOS编程:Address Book
- C#中的StreamReader/StreamWriter
- 诠释的伤感独特个性日志发布:你是今生最让我伤心的人
- FIFA13游戏操作指南
- 自拍自作动感画册
- Windows定义了6个优先级类别
- 成本和费用的区别与联系