Skip to content

🌳 A compressed rank/select dictionary exploiting approximate linearity and repetitiveness.

License

Notifications You must be signed in to change notification settings

gvinciguerra/BlockEpsilonTree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Block-ε tree

The block-ε tree is a compressed rank/select dictionary that achieves new space-time trade-offs by exploiting the approximate linearity and the repetitiveness of the data. It is based on a combination of the LA-vector (paper, code) and the block tree (paper, code).

Usage

This is a header-only library. To compile the example, use the following commands:

git clone https://github.com/gvinciguerra/BlockEpsilonTree.git
cd BlockEpsilonTree
cmake . -DCMAKE_BUILD_TYPE=Release
make -j8

License

This project is released for academic purposes under the terms of the GNU General Public License v3.0. Some methods implemented in this project are patent pending.

If you use this code for your research, please cite:

Paolo Ferragina, Giovanni Manzini, and Giorgio Vinciguerra. Repetition- and linearity-aware rank/select dictionaries. In: Proceedings of the 32nd International Symposium on Algorithms and Computation (ISAAC), 2021.

@inproceedings{Ferragina:2021isaac,
  author = {Ferragina, Paolo and Manzini, Giovanni and Vinciguerra, Giorgio},
  booktitle = {Proceedings of the 32nd International Symposium on Algorithms and Computation (ISAAC)},
  title = {Repetition- and linearity-aware rank/select dictionaries},
  year = {2021}}

About

🌳 A compressed rank/select dictionary exploiting approximate linearity and repetitiveness.

Topics

Resources

License

Stars

Watchers

Forks