CluE
1.0
|
Iterates over all fixed-size subsets of a given superset. More...
#include <fixedsizesubsetiterator.h>
Public Member Functions | |
FixedSizeSubsetIterator (std::set< T * > superset, size_t size) | |
Provide the superset as a set. More... | |
FixedSizeSubsetIterator (std::vector< T * > superset, size_t size) | |
Provide the superset as a vector. More... | |
virtual size_t | size () const |
Size of the current subset. More... | |
virtual void | next () |
Generates the next subset. More... | |
virtual bool | hasMore () const |
Returns if the Graycode sequence is incomplete yet or not. More... | |
virtual std::set< T * > | set () const |
Returns the current subset as a set. More... | |
virtual std::vector< T * > | vector () const |
Returns the current subset as a vector. More... | |
Private Member Functions | |
void | buildSubsetIndices (std::vector< size_t > &buildVector) |
Private Attributes | |
std::vector< T * > | supersetVector |
std::vector< std::vector < size_t > > | subsetIndices |
size_t | fixedSize |
size_t | currentPosition |
Iterates over all fixed-size subsets of a given superset.
Generates all fixed-size subsets of a given superset. The superset's size is not limited by the number of bits of the largest integral data type.
Definition at line 20 of file fixedsizesubsetiterator.h.
CluE::FixedSizeSubsetIterator< T >::FixedSizeSubsetIterator | ( | std::set< T * > | superset, |
size_t | size | ||
) |
Provide the superset as a set.
InvalidArgumentException | [0] Value of size is invalid! size. |
Definition at line 72 of file fixedsizesubsetiterator.h.
CluE::FixedSizeSubsetIterator< T >::FixedSizeSubsetIterator | ( | std::vector< T * > | superset, |
size_t | size | ||
) |
Provide the superset as a vector.
InvalidArgumentException | [0] Value of size is invalid! size. |
Definition at line 84 of file fixedsizesubsetiterator.h.
|
virtual |
Size of the current subset.
Implements CluE::SetIterator< T >.
Definition at line 113 of file fixedsizesubsetiterator.h.
|
virtual |
Generates the next subset.
std::out_of_range | No remaining subsets. |
Implements CluE::SetIterator< T >.
Definition at line 118 of file fixedsizesubsetiterator.h.
|
virtual |
Returns if the Graycode sequence is incomplete yet or not.
Implements CluE::SetIterator< T >.
Definition at line 126 of file fixedsizesubsetiterator.h.
|
virtual |
Returns the current subset as a set.
Implements CluE::SetIterator< T >.
Definition at line 131 of file fixedsizesubsetiterator.h.
|
virtual |
Returns the current subset as a vector.
Implements CluE::SetIterator< T >.
Definition at line 141 of file fixedsizesubsetiterator.h.
|
private |
Definition at line 96 of file fixedsizesubsetiterator.h.
|
private |
Definition at line 66 of file fixedsizesubsetiterator.h.
|
private |
Definition at line 67 of file fixedsizesubsetiterator.h.
|
private |
Definition at line 68 of file fixedsizesubsetiterator.h.
|
private |
Definition at line 69 of file fixedsizesubsetiterator.h.