📄 dsaset2.java
字号:
public class DSASet2 implements DSA
{
private BinarySearchTree BSTree;
private String s;
public DSASet2()
{
BSTree = new BinarySearchTree(new Comparator());
}
public boolean add(int element)
{
BSTree.insertItem(new Integer(element), new Integer(1));
return true;
}
public boolean remove (int element)
{
if (BSTree.removeElement(new Integer(element))!=null)
return true;
else return false;
}
public boolean contains(int element)
{
if (BSTree.findElement(new Integer(element))!=null)
return true;
else return false;
}
public void clear()
{
BSTree = new BinarySearchTree(new Comparator());
}
public boolean isEmpty()
{
return BSTree.isEmpty();
}
public int size()
{
return BSTree.size();
}
public String toString()
{
s="";
return (inorder(BSTree.T, BSTree.T.root()));
}
private String inorder(LinkedBinaryTree bt, Position po)
{
if (bt.isInternal(po))
{
inorder(bt, bt.leftChild(po));
s+= ("Tree Node value: "+((Item)(po.element())).key() + "\n");
inorder(bt, bt.rightChild(po));
}
return s;
}
public static void main(String[] args)
{
DSASet2 a = new DSASet2();
long startTime = System.currentTimeMillis();
for (int i = 0 ; i < 50000; i++)
{
int b =(int)(Math.random()*50000);
a.add(b);
}
long addTime = System.currentTimeMillis();
System.out.println("add 50000 time: "+ (addTime-startTime));
for (int i = 0 ; i < 50000; i++)
{
int b =(int)(Math.random()*50000);
a.remove(b);
}
long removeTime = System.currentTimeMillis();
System.out.println("remove 50000 time: "+ (removeTime-addTime));
for (int i = 0 ; i < 50000; i++)
{
int b =(int)(Math.random()*50000);
a.contains(b);
}
long checkTime = System.currentTimeMillis();
System.out.println("check 50000 time: "+ (checkTime-removeTime));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -