code: public final T offer(T toQueue, double score) {
      HeapUtils.offer(keys, values, size, toQueue, score);
      size++;
  
      if (size > maxElements) {
        return removeMin();
      } else {
        return null;
      }
    }
docs: Add {@code toQueue} to this with {@code score}.
  Calling this method may remove the lowest-scoring
  element if adding the new element causes the size of
  {@code this} to exceed {@code this.maxElements}.
  
  @param toQueue
  @param score
  @return the removed element if an element was removed,
  {@code null} otherwise.