hashtable — hash tables using coalescing lists
hashtable is an implementation of hash tables based on the
method of coalescing lists (see Knuth, Algorithm 6.4C). It is
particularly suitable for making symbol tables.
You...
- make a hashtable using table = hashtable_new(size)
- add things to it using hashtable_insert(table, key, key-length)
- find things in it using hashtable_find(table, key, key-length)
- reclaim its resources using hashtable_delete(table)
On my 2006-era MacBook I can insert all 1/4 million lines from
/usr/share/dict/words into one of these tables in less than
1/3 of a second.
Read the manual page (third link below) for full details and a short
example program.
Download the source code: hashtable-0.1.0.tar.gz
Browse the source code: hashtable-0.1.0
Read the manual page: hashtable.3.html
hashtable is distributed under the MIT license. It will not
infect your project with a contagious disease if you decide to use it.
If you find bugs or have suggestions, please send them to Ian at the
domain name of this web site. Thanks!
Version history
- 2013-08-17 hashtable-0.1.0
-
First release. Written to support a weekend project and tested very little outside of that context.
Expect bugs.