permlib  0.2.9
Library for permutation computations
Public Types | Public Member Functions | Friends | List of all members
permlib::partition::Partition Class Reference

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 More...
 
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

template<class T >
class BacktrackRefinement
 
std::ostream & operator<< (std::ostream &out, const Partition &p)
 

Detailed Description

partition

Member Function Documentation

◆ intersect()

template<class ForwardIterator >
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!!!

See also
intersects
Parameters
beginbegin iterator(unsigned int) to a sorted list of elements
endend iterator(unsigned int) to a sorted list of elements
j
Returns
true if intersection really splits the j-th cell

◆ intersects()

template<class ForwardIterator >
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

See also
intersect

The documentation for this class was generated from the following file: