Skip to content

Latest commit

 

History

History
34 lines (25 loc) · 1.04 KB

README.md

File metadata and controls

34 lines (25 loc) · 1.04 KB

LibLCTHW

This is the library that you finally create in my book Learn C The Hard Way found at:

http://c.learncodethehardway.org/

TODO

  • Make tst_traverse abort if too deep.
  • Add the RadixMap_sort_tail from Mongrel2 to study as an exercise.
  • Look up whatever tail recursion is available in GCC or others.

Algorithms Needed

  • binary search -- got in sarray.c and radixmap.c
  • qsort -- used in sarray.c but maybe implement?
  • heap -- don't have, could add
  • radix sort -- have that, and in radixmap
  • jenkin's hash -- need another one, djb's maybe?
  • boyer-moore-horspool search -- bstrlib.c doesn't use this, so show how to make one
  • longest common subsequence -- tst vs. sarray
  • all common prefixes -- tst vs. sarray
  • all substrings -- tst vs. sarray
  • async file client/server -- ringbuffer, queue
  • non-linear suffix tree delta -- that was cool, figure it out again
  • RC4 is actually cooler and fits the student at that stage
  • timsort maybe? -- no too complicated
  • merge sort on double-linked-lists is a good algorithm.