commit | 002972ec2c55b606f2844d17b7443b5e69e29a7e | [log] [tgz] |
---|---|---|
author | Elliott Hughes <enh@google.com> | Mon Jul 20 22:23:54 2020 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Mon Jul 20 22:23:54 2020 +0000 |
tree | 159f00cd01a7aa45f76f71f43f672a58c8f54197 | |
parent | 38cb75176df9817e4bed6a1f9e524f041b9d4b8f [diff] | |
parent | b7cf80ced84df9148b968e6830d22ceccad5bcbf [diff] |
Merge "Merge tag v0.2.6 (e54f296bb52d16693931c8b963744931ef1e37f7)." am: dd2e280359 am: 2ea6e854d5 am: a7cf57e5e4 am: 4362d91ea1 am: 6705e199ca am: b7cf80ced8 Original change: https://android-review.googlesource.com/c/platform/external/marisa-trie/+/1364599 Change-Id: Id4169330b45932d9c668022bb77251697a44721b
marisa-trie
MARISA: Matching Algorithm with Recursively Implemented StorAge
0.2.6
Matching Algorithm with Recursively Implemented StorAge (MARISA) is a static and space-efficient trie data structure. And libmarisa is a C++ library to provide an implementation of MARISA. Also, the package of libmarisa contains a set of command line tools for building and operating a MARISA-based dictionary.
A MARISA-based dictionary supports not only lookup but also reverse lookup, common prefix search and predictive search.
The biggest advantage of libmarisa is that its dictionary size is considerably more compact than others. See below for the dictionary size of other implementations.
Implementation | Size (bytes) | Remarks |
---|---|---|
darts-clone | 376,613,888 | Compacted double-array trie |
tx-trie | 127,727,058 | LOUDS-based trie |
marisa-trie | 50,753,560 | MARISA trie |
You can get the latest version via git clone
. Then, you can generate a configure
script via autoreconf -i
. After that, you can build and install libmarisa and its command line tools via configure
and make
. For details, see also documentation in docs
.
$ git clone https://github.com/s-yata/marisa-trie.git $ cd marisa-trie $ autoreconf -i $ ./configure --enable-native-code $ make $ make install