Package com.google.common.collect
Class Collections2.OrderedPermutationCollection<E>
java.lang.Object
java.util.AbstractCollection<List<E>>
com.google.common.collect.Collections2.OrderedPermutationCollection<E>
- All Implemented Interfaces:
Iterable<List<E>>
,Collection<List<E>>
- Enclosing class:
Collections2
private static final class Collections2.OrderedPermutationCollection<E>
extends AbstractCollection<List<E>>
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final Comparator
<? super E> (package private) final ImmutableList
<E> (package private) final int
-
Constructor Summary
ConstructorsConstructorDescriptionOrderedPermutationCollection
(Iterable<E> input, Comparator<? super E> comparator) -
Method Summary
Modifier and TypeMethodDescriptionprivate static <E> int
calculateSize
(List<E> sortedInputList, Comparator<? super E> comparator) The number of permutations with repeated elements is calculated as follows: For an empty list, it is 1 (base case).boolean
boolean
isEmpty()
iterator()
int
size()
toString()
Methods inherited from class java.util.AbstractCollection
add, addAll, clear, containsAll, remove, removeAll, retainAll, toArray, toArray
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
equals, hashCode, parallelStream, removeIf, spliterator, stream, toArray
-
Field Details
-
inputList
-
comparator
-
size
final int size
-
-
Constructor Details
-
OrderedPermutationCollection
OrderedPermutationCollection(Iterable<E> input, Comparator<? super E> comparator)
-
-
Method Details
-
calculateSize
The number of permutations with repeated elements is calculated as follows:- For an empty list, it is 1 (base case).
- When r numbers are added to a list of n-r elements, the number of permutations is increased by a factor of (n choose r).
-
size
public int size()- Specified by:
size
in interfaceCollection<E>
- Specified by:
size
in classAbstractCollection<List<E>>
-
isEmpty
public boolean isEmpty()- Specified by:
isEmpty
in interfaceCollection<E>
- Overrides:
isEmpty
in classAbstractCollection<List<E>>
-
iterator
- Specified by:
iterator
in interfaceCollection<E>
- Specified by:
iterator
in interfaceIterable<E>
- Specified by:
iterator
in classAbstractCollection<List<E>>
-
contains
- Specified by:
contains
in interfaceCollection<E>
- Overrides:
contains
in classAbstractCollection<List<E>>
-
toString
- Overrides:
toString
in classAbstractCollection<List<E>>
-