Package groovy.util
Class PermutationGenerator<E>
java.lang.Object
groovy.util.PermutationGenerator<E>
public class PermutationGenerator<E> extends Object implements Iterator<List<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 Summary
Constructors Constructor Description PermutationGenerator(Iterable<E> items)
PermutationGenerator(Collection<E> items)
WARNING: Don't make n too large. -
Method Summary
-
Constructor Details
-
PermutationGenerator
WARNING: 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