Module bio::data_structures::rank_select
source ·
[−]Expand description
Rank/Select data structure based on Gonzalez, Grabowski, Mäkinen, Navarro (2005). This implementation uses only a single level of blocks, and performs well for large n.
Example
extern crate bv;
use bio::data_structures::rank_select::RankSelect;
use bv::BitVec;
use bv::BitsMut;
let mut bits: BitVec<u8> = BitVec::new_fill(false, 64);
bits.set_bit(5, true);
bits.set_bit(32, true);
let rs = RankSelect::new(bits, 1);
assert!(rs.rank(6).unwrap() == 1);
Structs
A rank/select data structure.