17 releases
Uses old Rust 2015
0.5.2 | Aug 29, 2019 |
---|---|
0.4.4 | Mar 28, 2018 |
0.4.2 | Oct 17, 2016 |
0.4.0 | Jun 28, 2016 |
#800 in Data structures
2,794 downloads per month
Used in 18 crates
(7 directly)
170KB
4K
SLoC
Succinct Data Structures for Rust
So far we have:
- bit vectors and bit buffer;
- integer vectors with arbitrary-sized (1- to 64-bit) elements;
- a variety of universal codes;
- constant-time rank queries; and
- O(lg lg n)-time select queries based on binary search over ranks.
Usage
It’s on crates.io, so you can add
[dependencies]
succinct = "0.5.2"
to your Cargo.toml
.
Credits
-
IntVec
borrows some implementation techniques fromnbitsvec
. The main difference is thatnbitsvec
uses atypenum
to put the element size (in bits) as a parameter to the vector type. Also,nbitsvec
is likely to be faster. -
Some of the API is inspired by SDSL, a C++ succinct data structures library. It’s much more complete than
succinct
, and probably more correct and faster too.
Dependencies
~185–270KB