Minimal C implementations of common data structures for learning C engineering.
IntList: growable list ofintList: growable list of fixed-size elements copied by valueHashMap: string-keyed hash table using FNV-1a and linear probing; owns copied keys and storessize_tvalues
On MacOS ensure
clang --version >= 22or
nix develop
make testThis project favors simple, readable C over clever abstractions.
List stores shallow byte copies. If an element contains pointers, the pointed-to data remains owned by the caller.
HashMap owns its copied keys. Call hm_free before reinitializing a live map.