//利用内部类实现
class Bin{
class Node{
private int data;
private Node left;
private Node right;
public Node (int data){
this.data=data;
}
public void addNode(Node newNode){
if(this.data>newNode.data){
if(this.left==null)
this.left=newNode;
else
this.left.addNode(newNode);
}
else{
if(this.right==null)
this.right=newNode;
else
this.right.addNode(newNode);
}
}
public void printNode(){
if(this.left!=null)
this.left.printNode();
System.out.println(this.data);
if(this.right!=null)
this.right.printNode();
}
}
private Node root;
public void add(int data){
Node newNode=new Node(data);
if(this.root==null)
this.root=newNode;
else
this.root.addNode(newNode);
}
public void print(){
if(this.root!=null)
this.root.printNode();
}
}
public class BinDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Bin a=new Bin();
a.add(5);
a.add(4);
a.add(9);
a.add(12);
a.add(1);
a.print();
}
}
class Bin{
class Node{
private int data;
private Node left;
private Node right;
public Node (int data){
this.data=data;
}
public void addNode(Node newNode){
if(this.data>newNode.data){
if(this.left==null)
this.left=newNode;
else
this.left.addNode(newNode);
}
else{
if(this.right==null)
this.right=newNode;
else
this.right.addNode(newNode);
}
}
public void printNode(){
if(this.left!=null)
this.left.printNode();
System.out.println(this.data);
if(this.right!=null)
this.right.printNode();
}
}
private Node root;
public void add(int data){
Node newNode=new Node(data);
if(this.root==null)
this.root=newNode;
else
this.root.addNode(newNode);
}
public void print(){
if(this.root!=null)
this.root.printNode();
}
}
public class BinDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Bin a=new Bin();
a.add(5);
a.add(4);
a.add(9);
a.add(12);
a.add(1);
a.print();
}
}