private void HeapRemoveRoot() { if (numScorers == 1) { subScorers[0] = null; numScorers = 0; } else { subScorers[0] = subScorers[numScorers - 1]; subScorers[numScorers - 1] = null; --numScorers; HeapAdjust(0); } } }