Class CombinationSpliterator
java.lang.Object
one.util.streamex.CombinationSpliterator
- All Implemented Interfaces:
Spliterator<int[]>
-
Nested Class Summary
Nested classes/interfaces inherited from interface Spliterator
Spliterator.OfDouble, Spliterator.OfInt, Spliterator.OfLong, Spliterator.OfPrimitive<T,T_CONS, T_SPLITR> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final longprivate final intprivate longprivate int[]Fields inherited from interface Spliterator
CONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint(package private) static longcnk(int n, int k) longvoidforEachRemaining(Consumer<? super int[]> action) (package private) static longgcd(long a, long b) (package private) static int[]jump(long newPos, int k, int n) (package private) static voidstep(int[] value, int n) booleantryAdvance(Consumer<? super int[]> action) Spliterator<int[]> trySplit()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Spliterator
getComparator, getExactSizeIfKnown, hasCharacteristics
-
Field Details
-
pos
private long pos -
value
private int[] value -
fence
private final long fence -
n
private final int n
-
-
Constructor Details
-
CombinationSpliterator
public CombinationSpliterator(int n, long pos, long fence, int[] value)
-
-
Method Details
-
forEachRemaining
- Specified by:
forEachRemainingin interfaceSpliterator<int[]>
-
trySplit
- Specified by:
trySplitin interfaceSpliterator<int[]>
-
estimateSize
public long estimateSize()- Specified by:
estimateSizein interfaceSpliterator<int[]>
-
characteristics
public int characteristics()- Specified by:
characteristicsin interfaceSpliterator<int[]>
-
step
static void step(int[] value, int n) -
jump
static int[] jump(long newPos, int k, int n) -
gcd
static long gcd(long a, long b) -
cnk
static long cnk(int n, int k) - Parameters:
n- n > kk- k > 0- Returns:
- CNK(n, k)
-
tryAdvance
- Specified by:
tryAdvancein interfaceSpliterator<int[]>
-