Class permutation (o2scl)¶
-
class
o2scl
::
permutation
¶ A class for representing permutations.
To apply a permutation to a user-specified vector, see o2scl::permutation::apply().
Copy constructors
-
permutation
(const permutation &v)¶
-
permutation &
operator=
(const permutation &v)¶
-
~permutation
()¶
-
size_t &
operator[]
(size_t i)¶ Array-like indexing.
-
const size_t &
operator[]
(size_t i) const¶ Array-like indexing.
-
size_t &
operator()
(size_t i)¶ Array-like indexing.
-
const size_t &
operator()
(size_t i) const¶ Array-like indexing.
-
size_t
get
(size_t i) const¶ Get (with optional range-checking)
-
int
set
(size_t i, size_t val)¶ Set (with optional range-checking)
-
int
init
()¶ Initialize permutation to the identity.
-
size_t
size
() const¶ Return permutation size.
If no memory has been allocated, this will quietly return zero.
-
int
allocate
(size_t dim)¶ Allocate memory for a permutation of size
dim
.
-
int
free
()¶ Free the memory.
This function will safely do nothing if used without first allocating memory or if called multiple times in succession.
-
void
resize
(size_t dim)¶ Resize.
-
int
swap
(const size_t i, const size_t j)¶ Swap two elements of a permutation.
-
bool
valid
() const¶ Check to see that a permutation is valid.
-
int
reverse
()¶ Reverse the permutation.
-
permutation
inverse
() const¶ Compute the inverse of a permutation.
Public Functions
-
permutation
(size_t dim = 0)¶ Create a permutation of size
dim
.
-