3 ms·
I didn't go to university thus I do not have a CS degree. This book was incredibly helpful in teaching me the basics of algorithms. I found it approachable but
by ryanmarsh 9y ago
I didn't go to university thus I do not have a CS degree. This book was incredibly helpful in teaching me the basics of algorithms. I found it approachable but technical enough.
- eru 9y agoI don't have a CS or any other degree either. But I guess I'm just grumpy, because the book came with high praise. To be more constructive: Sedgewick's Algorithms is good for implementations in imperative languages. Okasaki's Purely Functional Data Structures is a nice introduction to some algorithms and data structures suitable in a purely functional setting. He also addresses laziness. And finally for the theory, Schrijver's "Combinatorial Optimization: Polyhedra and Efficiency" tells you more about P and the boundary to NP than you ever wanted to know. Those are just a few that I enjoyed, and I can't claim they are the best. For example Structure and Interpretation of Computer Programs is definitely worth a read, but it won't help you with algorithms directly.
- ska 9y agoFor all its quirks, Knuth is still best for a lot of the algorithmic analysis. You'll have to go elsewhere for cutting edge in a lot of areas, but it's great to learn from.
- eru 9y agoI found Knuth's Art of Computer Programming a bit too dense for me, and I have a high tolerance. There's definitely a wide world inbetween the fluffy Skiena and the concrete Knuth. (I did enjoy Concrete Mathematics.) Knuth is a bit too imperative for my interests. But if you like strong stuff, Schrijver's "Combinatorial Optimization: Polyhedra and Efficiency" tells you more about P and the boundary to NP than you ever wanted to know. http://jeffe.cs.illinois.edu/teaching/algorithms/ http://jeffe.cs.illinois.edu/teaching/algorithms/ is reasonably accessible so far for me, yet still manages to teach me new hard things. None of the books mentioned are bleeding edge. It's easier to get that out of papers.
- taeric 9y agoIf you haven't tried the latest entries in Knuth's work, I'd recommend those. The preprints of the Dancing Links stuff is surprisingly approachable and a ton of fun.
- anta40 9y agoI once studied SICP out of curiosity during undergraduate days. It's an interesting introduction to functional programming using Scheme. Of course, it don't focus on algorithms itself. You need to study other materials, provided in books already mentioned here :)
- Ramiuz 9y agoI wanted to do the same, but I feel a little threatened by the DS clause (That I had to had a course on the topic) - Did you have previous knowledge or just went through?