TNick.github.io

home

Dynamic arrays in c

05 Mar 2014

This page attempts to gather information about various data structures used for storing dynamic content in c.

Simple dynamic arrays

A simple implementation here. It usses realloc() to change the size of the array, that may become slow. Also note this StackOverflow answer about the strategy to use when resizing. Since elements are continous in memory may be fast when accessing content sequentially.

obstacks

An obstack is a pool of memory containing a stack of objects. You can create any number of separate obstacks, and then allocate objects in specified obstacks. Within each obstack, the last object allocated must always be the first one freed, but distinct obstacks are independent of each other.

Judy arrays

Repositories on Github - https://github.com/alanpearson/judy - https://github.com/electromatter/judy-svn - https://github.com/darconeous/judy - https://github.com/dump247/judy - https://github.com/tony2001/judy build system cleaned - https://github.com/bpowers/judyarrays Markdown - https://github.com/qiq/judy-fk This is a modified JudySL implementation, so that keys are not NUL-terminated C strings, but fixed-length sequence of bytes. Except this, it is the same as original JudySL implementation. - https://github.com/felix-lang/judy

hat-trie

Project page; written by Karl Malbrain.

A HAT tree consists of a cascaded series of root radix director nodes for leading key bytes, which then point to either another radix node, or a hash bucket, or a string array which contains the rest of the bytes in the keys

high-concurrency-btree

Implement Lehman and Yao's high concurrency B-Tree in C language with Jaluta's balanced B-link tree operations including a locking enhancement for increased concurrency.

Other things

discovered while researching this:

Tagged with survey

"Any sufficiently advanced troll is indistinguishable from a genuine kook." Alan Morgan