BST.java |
BST.java
package ninenine;
//定义二分搜索树的类
public class BST<E extends Comparable<E>> {//泛型要求是可以比较的
private class Node {
public E e;
public Node left, right;
public Node(E e) {
this.e = e;
left = null;
right = null;
}
}
private Node root;
private int size;
//二叉树构造函数
public BST(){
root = null;
size = 0;
}
//getsize
public int size(){
return size;
}
//判断二叉树是否为空
public boolean isEmpty(){
return size == 0;
}
// 向二分搜索树中添加新的元素e
public void add(E e){
if(root == null){
root = new Node(e);
size ++;
}
else
add(root, e);//调用函数add(Node node, E e)
}
// 向以node为根的