#tree #btree #btreemap #index #indexing

indextreemap

A BTreeMap implementation that allows for key and or positional insertion and retreival

4 releases

0.1.25 Dec 22, 2023
0.1.24 Dec 19, 2023
0.1.23 Jul 10, 2023
0.1.15 Jun 30, 2023

#4 in #niche

Download history 26/week @ 2023-10-30 1/week @ 2023-11-13 62/week @ 2023-11-20 79/week @ 2023-11-27 61/week @ 2023-12-04 39/week @ 2023-12-11 73/week @ 2023-12-18 63/week @ 2023-12-25 18/week @ 2024-01-01 36/week @ 2024-01-08 21/week @ 2024-01-15 15/week @ 2024-01-22 74/week @ 2024-01-29 44/week @ 2024-02-05 139/week @ 2024-02-12

272 downloads per month

MIT license

90KB
1.5K SLoC

indextreemap

IndexTreeMap is an ordered tree map based on the rust standard library BTreeMap, that allows for items to be accessed by key, value, or position in the tree.

This library is meant to serve niche use cases where the deterministic ordering of key-value items is required, with the ability to index items by position or key in logarithmic time.

When compared to the standard library BTreeMap (std::collections::BTreeMap), for operations that require changes in memory allocation (insert, remove, etc...) the IndexTreeMap is slower. However, when referencing data already allocated in memory, the IndexTreeMap is equivalent or faster.

Dependencies

~0.4–1MB
~24K SLoC