|
SDSL: Succinct Data Structure Library
A C++ template library for succinct data structures
|
A wrapper class for the
and LF function for (compressed) suffix arrays that are based on a wavelet tree (like sdsl::csa_wt).
More...
#include <csa_wt.hpp>
Public Types | |
| typedef CsaWT::value_type | value_type |
| typedef CsaWT::size_type | size_type |
| typedef CsaWT::char_type | char_type |
| typedef CsaWT::difference_type | difference_type |
|
typedef random_access_const_iterator < psi_of_csa_wt > | const_iterator |
Public Member Functions | |
| psi_of_csa_wt (CsaWT *csa_wt=NULL) | |
| Constructor. | |
| psi_of_csa_wt (const psi_of_csa_wt &psi_of_csa) | |
| Copy constructor. | |
| value_type | operator[] (size_type i) const |
Calculate the value at position i. | |
| value_type | psi_k (size_type i, size_type k) const |
Apply k times to the value at position i. | |
| value_type | operator() (size_type i) const |
| Calculate the LF mapping at position i. | |
| value_type | lf_k (size_type i, size_type k) const |
| Apply LF k times to the value at position i. | |
| psi_of_csa_wt & | operator= (const psi_of_csa_wt &psi_of_csa) |
| Assignment operator. | |
| bool | operator== (const psi_of_csa_wt &psi) |
| Equality operator. | |
| size_type | size () const |
Returns the size of the function. | |
| size_type | empty () const |
Returns if the function is empty. | |
| void | swap (psi_of_csa_wt &psi_of_csa) |
| Swap operation require by the STL. | |
| const_iterator | begin () const |
| Returns a const_iterator to the first element. | |
| const_iterator | end () const |
| Returns a const_iterator to the element after the last element. | |
| uint32_t | get_sample_dens () const |
A wrapper class for the
and LF function for (compressed) suffix arrays that are based on a wavelet tree (like sdsl::csa_wt).
| const_iterator sdsl::psi_of_csa_wt< CsaWT >::begin | ( | ) | const [inline] |
| const_iterator sdsl::psi_of_csa_wt< CsaWT >::end | ( | ) | const [inline] |
Returns a const_iterator to the element after the last element.
Required for the STL Container Concept.
| value_type sdsl::psi_of_csa_wt< CsaWT >::lf_k | ( | size_type | i, |
| size_type | k | ||
| ) | const [inline] |
Apply LF k times to the value at position i.
\param i The index for which LF should be applied k times, \form#105.
| k | Number of times LF should be applied |
| value_type sdsl::psi_of_csa_wt< CsaWT >::operator() | ( | size_type | i | ) | const [inline] |
Calculate the LF mapping at position i.
The LF mapping function is the inverse to the
function. That is
.
| i | The index for which the LF value should be calculated, . |
| bool sdsl::psi_of_csa_wt< CsaWT >::operator== | ( | const psi_of_csa_wt< CsaWT > & | psi | ) | [inline] |
Equality operator.
return Always true, since all wrapper objects are equal only the reference to the supported csa differs.
| value_type sdsl::psi_of_csa_wt< CsaWT >::operator[] | ( | size_type | i | ) | const [inline] |
Calculate the
value at position i.
\param i The index for which the \form#6 value should be calculated, \form#105. \par Time complexity
| value_type sdsl::psi_of_csa_wt< CsaWT >::psi_k | ( | size_type | i, |
| size_type | k | ||
| ) | const [inline] |
Apply
k times to the value at position i.
\param i The index for which \form#6 should be applied k times, \form#105.
| k | Number of times should be applied |
1.8.0