permlib
0.2.6
Library for permutation computations
|
partition More...
#include <partition.h>
Public Types | |
typedef std::vector< unsigned int > | vector_t |
typedef vector_t::const_iterator | CellIt |
Public Member Functions | |
Partition (unsigned long n) | |
constructs an empty partition of length n | |
template<class ForwardIterator > | |
bool | intersect (ForwardIterator begin, ForwardIterator end, unsigned int j) |
intersects the j-th cell of this partition with a given set | |
bool | undoIntersection () |
reverts the last intersection if there is one | |
template<class ForwardIterator > | |
bool | intersects (ForwardIterator begin, ForwardIterator end, unsigned int j) const |
unsigned int | fixPointsSize () const |
number of fix points in this partition | |
vector_t::const_iterator | fixPointsBegin () const |
iterator to the begin of fix points | |
vector_t::const_iterator | fixPointsEnd () const |
iterator to the end of fix points | |
unsigned long | cells () const |
number of cells in this partition | |
unsigned long | cellSize (unsigned int c) const |
size of the c-th cell | |
CellIt | cellBegin (unsigned long cell) const |
CellIt | cellEnd (unsigned long cell) const |
Friends | |
class | BacktrackRefinement |
std::ostream & | operator<< (std::ostream &out, const Partition &p) |
partition
bool permlib::partition::Partition::intersect | ( | ForwardIterator | begin, |
ForwardIterator | end, | ||
unsigned int | j | ||
) | [inline] |
intersects the j-th cell of this partition with a given set
ASSUME INPUT IS SORTED!!!
begin | begin iterator(unsigned int) to a sorted list of elements |
end | end iterator(unsigned int) to a sorted list of elements |
j |
bool permlib::partition::Partition::intersects | ( | ForwardIterator | begin, |
ForwardIterator | end, | ||
unsigned int | j | ||
) | const [inline] |
returns true iff given set actually intersects j-th cell of this partition