Java自学--二叉树排序
来源:互联网 发布:php的缺点 编辑:程序博客网 时间:2024/06/05 22:53
class BinaryTree{class Node{// 声明一个节点类private Comparable data ;// 保存具体的内容private Node left ;// 保存左子树private Node right ;// 保存右子树public Node(Comparable data){this.data = data ;}public void addNode(Node newNode){// 确定是放在左子树还是右子树if(newNode.data.compareTo(this.data)<0){// 内容小,放在左子树if(this.left==null){this.left = newNode ;// 直接将新的节点设置成左子树}else{this.left.addNode(newNode) ;// 继续向下判断}}if(newNode.data.compareTo(this.data)>=0){// 放在右子树if(this.right==null){this.right = newNode ;// 没有右子树则将此节点设置成右子树}else{this.right.addNode(newNode) ;// 继续向下判断}}}public void printNode(){// 输出的时候采用中序遍历if(this.left!=null){this.left.printNode() ;// 输出左子树}System.out.print(this.data + "\t") ;if(this.right!=null){this.right.printNode() ;}}};private Node root ;// 根元素public void add(Comparable data){// 加入元素Node newNode = new Node(data) ;// 定义新的节点if(root==null){// 没有根节点root = newNode ;// 第一个元素作为根节点}else{root.addNode(newNode) ; // 确定是放在左子树还是放在右子树}}public void print(){this.root.printNode() ;// 通过根节点输出}};public class ComparableDemo03{public static void main(String args[]){BinaryTree bt = new BinaryTree() ;bt.add(8) ;bt.add(3) ;bt.add(3) ;bt.add(10) ;bt.add(9) ;bt.add(1) ;bt.add(5) ;bt.add(5) ;System.out.println("排序之后的结果:") ;bt.print() ;}};
0 0
- Java自学--二叉树排序
- java-二叉树排序
- java 二叉树排序
- Java 二叉树排序
- Java 二叉树排序
- [数据结构]二叉树自学
- java二叉树排序算法
- java二叉树排序算法
- java实现排序二叉树
- java排序--平衡二叉树
- java实现排序二叉树
- Java实现二叉树排序
- Java基础 - 排序二叉树(二叉查找树)
- 二叉树中的排序树,Java版
- java排序算法_009二叉查找树
- 排序二叉树的实现 Java版
- Java 实现二叉树排序和查找
- 用java实现一个二叉树排序
- PL2303串口模块研究
- Yii CFileHelper常见的文件操作方法
- topcoder 刷题笔录 初级篇(一)
- GCD-queue介绍
- Android深入浅出之Audio 第一部分 AudioTrack分析
- Java自学--二叉树排序
- 【转自唐忍】Android中IntentService的原理及使用
- TCP/IP协议选项——TCP_KEEPALIVE
- MySQL5.6之 rpm安装
- Android深入浅出之Audio 第二部分 AudioFlinger分析
- “急功近利” 小感
- sql_trace
- Javascript判断页面刷新或关闭的方法
- 淘宝美工之左侧代码