protected Collection<TempQueue> getMostUnderservedQueues( PriorityQueue<TempQueue> orderedByNeed, TQComparator tqComparator) { ArrayList<TempQueue> underserved = new ArrayList<TempQueue>(); while (!orderedByNeed.isEmpty()) { TempQueue q1 = orderedByNeed.remove(); underserved.add(q1); TempQueue q2 = orderedByNeed.peek(); // q1's pct of guaranteed won't be larger than q2's. If it's less, then // return what has already been collected. Otherwise, q1's pct of // guaranteed == that of q2, so add q2 to underserved list during the // next pass. if (q2 == null || tqComparator.compare(q1,q2) < 0) { return underserved; } } return underserved; }
protected Collection<TempQueue> getMostUnderservedQueues( PriorityQueue<TempQueue> orderedByNeed, TQComparator tqComparator) { ArrayList<TempQueue> underserved = new ArrayList<TempQueue>(); while (!orderedByNeed.isEmpty()) { TempQueue q1 = orderedByNeed.remove(); underserved.add(q1); TempQueue q2 = orderedByNeed.peek(); // q1's pct of guaranteed won't be larger than q2's. If it's less, then // return what has already been collected. Otherwise, q1's pct of // guaranteed == that of q2, so add q2 to underserved list during the // next pass. if (q2 == null || tqComparator.compare(q1,q2) < 0) { return underserved; } } return underserved; }