| jmi2k/disjoint.h | disjoint types (aka sum types) | MIT |
| yrmt/arraylist | doubly linked list based on BSD TAILQ | MIT |
| clibs/hash | hash library built on zhash | MIT |
| clibs/list | simple doubly linked list | MIT |
| clibs/red-black-tree | Generic red-black tree library (by Julienne Walker). | MIT |
| thlorenz/sync-stream.c | synchronous stream implementation | MIT |
| troydhanson/uthash | C macros for hash tables and more | Unlicensed |
| willemt/cbuffer | circular buffer | BSD |
| willemt/bipbuffer | circular buffer alternative | BSD |
| willemt/heap | heap priority queue | BSD |
| willemt/pseudolru | pseudo least recently used cache | BSD |
| willemt/bag | data structure which only has put and randomised take operations | BSD |
| willemt/bitfield | easily get and set bits in a bitfield | BSD |
| willemt/array-avl-tree | self balancing tree | BSD |
| willemt/linked-list-hashmap | hashmap that uses linked lists for managing collisions | BSD |
| willemt/quadratic-probing-hashmap | hashmap that uses quadratic probing (open addressing) for managing collisions | BSD |
| davidleeds/hashmap | templated and type-safe hashmap using open addressing and linear probing for collision resolution. | MIT |
| rxi/vec | dynamic array | MIT |
| jlcordeiro/cmap | map with string keys | MIT |
| willemt/skiplist | Dictionary implemented through a skiplist | BSD |
| willemt/linked-list-queue | Queue using a linked list | BSD |
| willemt/meanqueue | An integer queue that calculates mean in O(1) | BSD |
| willemt/chunkybar | Data structure that efficiently represents multi-piece progress bars | BSD |
| willemt/farraylist | An arraylist that doesn't shift items so you can have "holes" between slots | BSD |
| mbucc/cqueue | OpenBSD's queue(3): linked lists and queues. | ISC and BSD |
| clibs/lmdb | Symas Lightning Memory-Mapped Database (LMDB) | The OpenLDAP Public License |
| willemt/arrayqueue | Queue implemented using an array | BSD |
| ajaymt/dict.c | Simple dictionary implemented through a linked list | MIT |
| ajaymt/list.c | Simple linked list | MIT |
| skeeto/lstack | A lock-free stack using C11's new stdatomic.h features | Unlicense |
| clehner/ll.c | Transparent linked lists | LGPL-3.0+ |
| kellydunn/libkld | Personal implementations of common datastructures. (List, Vector, Graph, Matrix, Tree, etc) | Unlicensed |
| willemt/duraqueue | Queue built to be durable under failure | BSD |
| gioyik/mapc | C lib for mapping | MIT |
| neylsongularte/simple-linked-list-c | Linked list implementation | Unlicensed |
| htmk/fat-array | Dynamic arbitrary typed array using fat pointers and macros. | MIT |
| laserswald/dlist | Type safe double linked list in the style of BSD's queue.h | Unlicensed |
| catb0t/sparse | Sparse arrays implemented by run-length-encoding regions of zeroes | GPL v3 |
| arablocks/flat-tree.c | A series of functions to map a binary tree to a list ported from flat-tree. | MIT |
| jwerle/libmerkle | A C99 library for generating Merkle trees. | MIT |
| rikvdh/zabuffer | A Zero-allocation buffer handling library for low-memory applications. | MIT |
| rikvdh/zringbuf | A Zero-allocation ring-buffer library for low-memory applications. | MIT |
| robusgauli/cvector | A Generic dynamic vector implementation with Iterator addon. | MIT |
| robusgauli/cset | Type safe, Generic & Fast as F**K Set Data structure (uses XXHash). | MIT |
| 4thel00z/env.h | Utilities to nicely interact with the environment variables. | GPL-3 |
| matthewzito/lib.cartilage | A library of various linked list data structures. | MIT |
| matthewzito/lib.envoy | Thread-safe notification chains. | MIT |