Fast compressed trie dictionary library
Go to file
Shunsuke Kanda 2f3367cced add files
2021-06-26 07:12:17 +09:00
.vscode add files 2021-06-26 07:12:17 +09:00
include add files 2021-06-26 07:12:17 +09:00
test add files 2021-06-26 07:12:17 +09:00
.clang-format rm old files and add bit_vector 2021-06-26 02:18:57 +09:00
.gitignore Modify xcdat_config.hpp 2017-11-12 20:52:28 +09:00
CMakeLists.txt add files 2021-06-26 07:12:17 +09:00
LICENSE Major Update 2017-07-12 15:48:49 +09:00
README.md Update README.md 2019-05-09 10:58:00 +09:00

Xcdat: xor-compressed double-array trie

Xcdat is a C++ library that implements static compressed string dictionaries based on an improved double-array trie.

The double array is known as the fastest trie representation and has been used in many trie libraries. On the other hand, it has a space efficiency problem because of a pointer-based data structure. Xcdat solves the problem using the XOR-compressed double-array methods described in the following article.

Shunsuke Kanda, Kazuhiro Morita, and Masao Fuketa. Compressed double-array tries for string dictionaries supporting fast lookup. Knowledge and Information Systems, 51(3): 10231042, 2017. [doi] [pdf]

Xcdat can implement trie dictionaries in smaller space compared to the other double-array libraries. In addition, the lookup speed is relatively fast in compressed data structures from the double-array advantage.

Documentation

The document of Xcdat is here.

Build Instructions

You can download and compile Xcdat as the following commands.

$ git clone https://github.com/kampersanda/xcdat.git
$ cd xcdat
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make install