那麼這個類肯定不是「默認的java」。我想你的老師可能在談論TreeSet
這是基於self-balancing binary tree的形式。
我不確定你給的鏈接類是多少年,但它沒有使用泛型,所以它可能是Java 1.4。此外,它使用的是默認軟件包 - 這是一個Java不 - 不,不建議生產。構造函數需要一個Comparator
,它可以比較樹將存儲的實例。例如,如果你想存儲整數爲了,你可以聲明二叉樹爲:
BinaryTree bt = new BinaryTree(new Comparator(){
public int compare(Object a, Object b){
return ((Integer) a).intValue() - ((Integer) b).intValue();
}
});
上面的代碼聲明它實現了Comparator
接口的匿名類。或者您可以使用一個普通類做同樣的事情:
MyIntegerComparator comparator = new MyIntegerComparator();
BinaryTree bt = new BinaryTree(comparator);
如果你的代碼..
class MyIntegerComparator implements Comparator {
public int compare(Object a, Object b){
return ((Integer) a).intValue() - ((Integer) b).intValue();
}
}
非常感謝你。 – sonya 2012-04-01 15:02:25