public void Rearrange (Node node) {
for (int i=0;i<numberOfItems;i++) {
if (binaryHeap[i] == node) {
int bubbleIndex = i;
while (bubbleIndex != 1) {
int parentIndex = bubbleIndex / 2;
if (binaryHeap[bubbleIndex].f <= binaryHeap[parentIndex].f) {
Node tmpValue = binaryHeap[parentIndex];
binaryHeap[parentIndex] = binaryHeap[bubbleIndex];
binaryHeap[bubbleIndex] = tmpValue;
bubbleIndex = parentIndex;
} else {
return;
}
}
}
}
}