Package groovy.util
Class PermutationGenerator<E>
java.lang.Object
groovy.util.PermutationGenerator<E>
Systematically generate permutations.
 Adapted from Java Code by Michael Gilleland (released with no restrictions) using an algorithm described here:
 Kenneth H. Rosen, Discrete Mathematics and Its Applications, 2nd edition (NY: McGraw-Hill, 1991), pp. 282-284
- 
Constructor SummaryConstructorsConstructorDescriptionPermutationGenerator(Iterable<E> items) PermutationGenerator(Collection<E> items) WARNING: Don't make n too large.
- 
Method SummaryMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.IteratorforEachRemaining
- 
Constructor Details- 
PermutationGeneratorWARNING: Don't make n too large. Recall that the number of permutations is n! which can be very large, even when n is as small as 20 -- 20! = 2,432,902,008,176,640,000 and 21! is too big to fit into a Java long, which is why we use BigInteger instead.- Parameters:
- items- the items to permute
 
- 
PermutationGenerator
 
- 
- 
Method Details- 
resetpublic void reset()
- 
getTotal
- 
hasNextpublic boolean hasNext()
- 
nextGenerate next permutation (algorithm from Rosen p. 284)
- 
removepublic void remove()
 
-