Class InterleavedRankSelect
Defined in File InterleavedRankSelect.h
Class Documentation
-
class InterleavedRankSelect
a static vector of bits with its counts inside its lines, rank with one access to the memory
Public Functions
-
inline InterleavedRankSelect(void)
-
InterleavedRankSelect(std::span<const Word> w, std::size_t n)
the directory of the n bits of the words w, laid out with them
- Pre:
w.size() >= ceil( n / 64 )
-
inline std::size_t size(void) const
-
inline std::size_t ones(void) const
the number of 1s
-
inline std::size_t zeros(void) const
the number of 0s
-
inline std::size_t rank0(std::size_t i) const
the number of 0s in the places [ 0 , i )
- Pre:
i <= size()
-
std::size_t select1(std::size_t k) const
the place of the k-th 1
-
std::size_t select0(std::size_t k) const
the place of the k-th 0
-
std::size_t directoryBits(void) const
the bits of the counts in the lines, of the superblocks and of the samples, beyond the m bits
-
inline InterleavedRankSelect(void)