High Performance Container Data Types

Github Action CRAN_Status_Badge

Documentation: http://randy3k.github.io/collections

Provides high performance container data types such as Queue, Stack, Deque, Dict and OrderedDict. Benchmarks https://randy3k.github.io/collections/articles/benchmark.html have shown that these containers are asymptotically more efficient than those offered by other packages.

dequer implements double ended queues and it supports arbitrary R objects. However, it uses R_PreserveObject and R_ReleaseObject heavily which could be an issue for long queues.

datastructures uses ‘Boost’ and ‘STL’ data types to implement queues and hashmaps. For some reasons, it is often slow as shown in the benchmark.

liqueueR implements queues in pure R code.

hash uses R environment to create hash tables. As indicated by the author of fastmap, a small amount of memory may be leaked.

hashmap provides hashmap for atomic vectors using boost library.

fastmap provides hashmap which does not leak memory. The current implementation of collection::Dict is actually inspired by it. However, a more efficient hash table library tommy is used.