public BinaryHeap(AnyType [ ] items) {
currentSize = items.length;
array = (AnyType[]) new Comparable[ (currentSize + 2) * 11/10 ];
int i = 1;
for(AnyType item : items)
array[ i++ ] = item;
buildHeap();
}
爲什麼是array.length = (currentSize + 2) * 11 /10
?關於BinaryHeap,如何確定數組的初始大小?
無法理解你的問題,什麼是'新可比[[currentSize + 2] * 11/10]' – 2013-03-22 13:20:11
我不知道,它也似乎是錯的。通常,二進制堆中的數組被分配爲2^k的大小,使得2^k> currentSize – 2013-03-22 13:20:30
@KugathasanAbimaran Anytype擴展了Comparable <?超級AnyType>這就是爲什麼我新的Comparable。 – Accelerator 2013-03-22 14:22:49