github.com/moontrade/nogc@v0.1.7/collections/tree/README.md (about)

     1  libart [![Build Status](https://travis-ci.org/armon/libart.png)](https://travis-ci.org/armon/libart)
     2  =========
     3  
     4  This library provides a C99 implementation of the Adaptive Radix
     5  Tree or ART. The ART operates similar to a traditional radix tree but
     6  avoids the wasted space of internal nodes by changing the node size.
     7  It makes use of 4 node sizes (4, 16, 48, 256), and can guarantee that
     8  the overhead is no more than 52 bytes per key, though in practice it is
     9  much lower.
    10  
    11  As a radix tree, it provides the following:
    12  * O(k) operations. In many cases, this can be faster than a hash table since
    13    the hash function is an O(k) operation, and hash tables have very poor cache locality.
    14  * Minimum / Maximum value lookups
    15  * Prefix compression
    16  * Ordered iteration
    17  * Prefix based iteration
    18  
    19  
    20  References
    21  ----------
    22  
    23  Related works:
    24  
    25  * [The Adaptive Radix Tree: ARTful Indexing for Main-Memory Databases](http://www-db.in.tum.de/~leis/papers/ART.pdf)