Symbol tables (a.k.a. dictionaries, maps) are data structures that hold key-value pairs.
The symbol tables implemented in this project have strings as keys and integers as values.
Algorithms taken from: Robert Sedgewick, Kevin Wayne, Algorithms, 4th edition.
seqser contains the code for a linked-list sequential search symbol table implementation.
binser contains the code for a binary search symbol table that uses dynamically-sized arrays.
tests contains tests for all modules.
All functions and structs are documented in their corresponding header files.
Once you meet all below requirements you should be able to run make test and check that everything is working correctly.
- C compiler (I used gcc 12.1.1)
- make
- criterion lib
