CDSC is a pure C library that contains implementations for more than 10 data structures with more and more coming, it aims at being simple and safe, all while being complete and well documented and covering common data structure needs.
CDSC contains implementations of the following data structures:
- Doubly Linked List
- Deque
- Queue
- Stack
- Tree
- Binary tree
- Graph
- Hashtable
- Heap
- Union-find (Disjoint set)
- Bloom filter
- Bit array
Each one of them can be built and used individually (though some of them depend on other ones). None of them require any external dependencies.
Complete and intuitive documentation for each CDSC data structure is currently being worked on.
Maintaining the implementation of more than 10 data structures while implementing more and more is a colossal amount of work. Any form of help is greatly appreciated and welcome. See the TODO issue if you don't know what you can help on.
This project is still in early development and not released yet, it's mostly usable, but not polished, still missing many features, and the codebase could use many optimizations, cleanup, and fixes. All the data structures are memory leak-free but no further security auditing has been done. This will change in the future. See the "TODO" issue for progress.