While both bored and studying for my CSE303 final, I decided to write something that would count as good practice towards it, including profiling, debugging, and Subversion use. It ended up a hash system using a trie, with three different primary types:
- SHash: A trie hash allowing all non-null characters in its search strings.
- SCHash: A caching variant in order to speed up lookups.
- TSHash: A trie hash allowing all non-null characters in its search strings, with mutexes built-in for multithreaded code.
- TSCHash: A caching variant in order to speed up lookups.
- LHash: A trie hash allowing all printable ASCII characters in its search string to reduce memory consumption.
- LCHash: A caching variant in order to speed up lookups.
Here's a tar archive of it. I find it a lot of fun to play with, especially using the intense_test binary and adjusting its #define parameters.
No comments:
Post a Comment