private void trickleUp(int index) {
		int parent = (index - 1) / 2;
		BTPosition<T> bottom = heap.get(index);

		while (index > 0
				&& comp.compare(heap.get(parent).element(), bottom.element()) < 0) {
			heap.set(index, heap.get(parent));
			index = parent;
			parent = (parent - 1) / 2;
		}

		heap.set(index, bottom);
	}