A class for the Compressed Suffix Array (CSA) proposed by Sadakane for practical implementation.
More...
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
class sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >
A class for the Compressed Suffix Array (CSA) proposed by Sadakane for practical implementation.
- Template Parameters
-
t_enc_vec | Space-efficient vector for increasing integer sequences. |
t_dens | Sampling density of SA values |
t_int_dens | Sampling density of ISA values |
t_sa_sample_strat | Policy of SA sampling. E.g. sample in SA-order or text-order. |
t_isa | Vector type for ISA sample values. |
t_alphabet_strat | Policy for alphabet representation. |
- See also
- sdsl::csa_wt, sdsl::csa_bitcompressed
Definition at line 58 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
alphabet_type::alphabet_category sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::alphabet_category |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
t_alphabet_strat sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::alphabet_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
alphabet_type::char_type sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::char_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
alphabet_type::comp_char_type sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::comp_char_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
ptrdiff_t sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::difference_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
t_enc_vec sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::enc_vector_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
alphabet_type::string_type sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::string_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
uint64_t sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::value_type |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
Enumerator |
---|
sa_sample_dens | |
isa_sample_dens | |
Definition at line 72 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::csa_sada |
( |
| ) |
|
|
inline |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::csa_sada |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > const & | csa | ) |
|
|
inline |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::csa_sada |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > && | csa | ) |
|
|
inline |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
Returns a const_iterator to the first element.
Required for the STL Container Concept.
- See also
- end
Definition at line 209 of file csa_sada.hpp.
template<class t_enc_vec , uint32_t t_dens, uint32_t t_inv_dens, class t_sa_sample_strat , class t_isa , class t_alphabet_strat >
template<typename archive_t >
void sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat >::CEREAL_LOAD_FUNCTION_NAME |
( |
archive_t & | ar | ) |
|
template<class t_enc_vec , uint32_t t_dens, uint32_t t_inv_dens, class t_sa_sample_strat , class t_isa , class t_alphabet_strat >
template<typename archive_t >
void sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa, t_alphabet_strat >::CEREAL_SAVE_FUNCTION_NAME |
( |
archive_t & | ar | ) |
const |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
bool sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::empty |
( |
| ) |
const |
|
inline |
Returns if the data strucutre is empty.
Required for the Container Concept of the STL.A
- See also
- size
Definition at line 200 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
Returns a const_iterator to the element after the last element.
Required for the STL Container Concept.
- See also
- begin.
Definition at line 218 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
uint32_t sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::get_sample_dens |
( |
| ) |
const |
|
inline |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
static size_type sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::max_size |
( |
| ) |
|
|
inlinestatic |
Returns the largest size that csa_sada can ever have.
Required for the Container Concept of the STL.
- See also
- size
Definition at line 191 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
bool sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::operator!= |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > const & | other | ) |
const |
|
inlinenoexcept |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
csa_sada & sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::operator= |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > && | csa | ) |
|
|
inline |
Assignment Move Operator.
Required for the Assignable Concept of the STL.
Definition at line 250 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
csa_sada & sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::operator= |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > const & | csa | ) |
|
|
inline |
Assignment Copy Operator.
Required for the Assignable Concept of the STL.
Definition at line 236 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
bool sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::operator== |
( |
csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat > const & | other | ) |
const |
|
inlinenoexcept |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
size_type sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::size |
( |
| ) |
const |
|
inline |
Number of elements in the
.
Required for the Container Concept of the STL.
- See also
- max_size, empty
- Time complexity
Definition at line 182 of file csa_sada.hpp.
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
const alphabet_type::C_type& sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::C = m_alphabet.C |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
const alphabet_type::char2comp_type& sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::char2comp = m_alphabet.char2comp |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
const alphabet_type::comp2char_type& sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::comp2char = m_alphabet.comp2char |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
const uint32_t sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::linear_decode_limit = 100000 |
|
static |
template<class t_enc_vec = enc_vector<>, uint32_t t_dens = 32, uint32_t t_inv_dens = 64, class t_sa_sample_strat = sa_order_sa_sampling<>, class t_isa_sample_strat = isa_sampling<>, class t_alphabet_strat = byte_alphabet>
const alphabet_type::sigma_type& sdsl::csa_sada< t_enc_vec, t_dens, t_inv_dens, t_sa_sample_strat, t_isa_sample_strat, t_alphabet_strat >::sigma = m_alphabet.sigma |