| CLRS does about 5 pages on linked lists. If you want more, my advice would be to implement one in your language of choice, then look at the API for the standard lib impl of a linked list in your language of choice (if there is one). Otherwise, for more reading on linked lists, read through adlist.c from redis, by antirez. Next, one of the best books (IMO) on algorithmic thinking is SICP. Get through a few chapters, do the exercises, grok recursion, etc. In no particular order: Algorithm Design Manual, Skiena Algorithm Design, by Kleinberg/Tardos Algorithms, Sedgwick 4th ed. (also Algorithms in C) If you find you need or would like more math: Discrete Mathematics (Epp is an easier read, Rosen seems more verbose) Mathematical Proofs, Charrand For interview prep: Elements of Programming Interviews (EPI) Designing Data Intensive Applications |