Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ctl
-
A header-only C implementation of C++ <algorithm>
Well, I do like mine better, which is closer to the STL, and for all containers. https://github.com/rurban/ctl/
-
A simple hash table in C
search for htable or hashtable in thousands of open source projects. only a minority has worse hashtables than this one (clisp, perl5 e.g.).
For better ones I would point to my linked list implementation: https://github.com/rurban/ctl/blob/master/ctl/unordered_set.... (because it has various security policies, nobody else has)
-
Popular Data Structure Libraries in C ?
C Container Template Library, Rurban Variant (CTL) - The page for unordered_map reads "Implementation in work still".
-
C Template Library
There is also the rurban variant variant of CTL which is more complete.
-
Better C Generics: The Extendible _Generic
The prototype of CC used this mechanism to provide a generic API for types instantiated via templates (so basically like other container libraries, but with an extendible-_Generic-based API laid over the top of the generated types). This approach has some significant advantages over the approach CC now uses, but I got a bit obsessed with eliminating the need to manually instantiate templates.
- C_dictionary: A simple dynamically typed and sized hashmap in C - feedback welcome
-
How different is C++ from C? Contrasting simple Unix SORT programs
But the most common that I know of is this one: https://github.com/tylov/STC. There's also this one mentioned above https://rurban.github.io/ctl/
- C++ containers but in C
- STL in C
-
On HASH-TABLEs performance
I'm also working on a proper one, but got sidetracked. https://github.com/rurban/ctl/blob/hmap/ctl/swisstable.h
JamaisVu
-
Common libraries and data structures for C
That's a cool library! Well done!
I made something similar to it being inspired by the C++ standard library. But it was for C89:
https://github.com/d26900/JamaisVu
I use tombstones for my hash table (unordered_map) though.
What are some alternatives?
rnnoise - Recurrent neural network for audio noise reduction
libcoll-c - A generic collections library for C
Klib - A standalone and lightweight C library
STC - A modern, user friendly, generic, type-safe and fast C99 container library: String, Vector, Sorted and Unordered Map and Set, Deque, Forward List, Smart Pointers, Bitset and Random numbers.
roost - Proof of Concept for Eventsourced backend
LIPS - Scheme based powerful lisp interpreter in JavaScript
covid_status
nix-home-manager - Nix to manage my computing life
libc - Raw bindings to platform APIs for Rust
ctl - The C Template Library
kbs2 - A secret manager backed by age
pottery - Pottery - A container and algorithm template library in C