/// <summary> /// Creates an ordered array of subsetCount long indices that /// constitute a subset of all longs in the range [0, count-1]. /// O(subsetCount * log(subsetCount)) for subsetCount << count. /// NOTE: It is assumed that subsetCount is significantly smaller /// than count. If this is not the case, use /// CreateRandomSubsetOfSize instead. /// WARNING: As subsetCount approaches count execution time /// increases significantly. /// </summary> public static long[] CreateSmallRandomOrderedSubsetIndexArrayLong( this IRandomUniform rnd, long subsetCount, long count) { var subsetIndexArray = rnd.CreateSmallRandomSubsetIndexArrayLong(subsetCount, count); subsetIndexArray.QuickSortAscending(); return(subsetIndexArray); }