Hacker News new | ask | show | jobs
by dennyferra 5374 days ago
I've been doing this exact same thing to learn. I read an interview question that asked how to sort a linked list. I tried implementing it on my own. Later I looked online to see other implementations and compared with my version. I was a little bummed to see my solution wasn't ideal but it only made me dig deeper.

Later on I found some Stanford lectures, particularly Programming Abstractions by Julie Zelenski (around lecture 14). After watching that lecture I was able to classify my linked list sorting attempt as a selection sort. I was pretty excited that I wrote a selection sort without even knowing what kind of sorting I was doing. I have yet to use my newly acquired knowledge at work but I'm now confident I can spot certain sorting algorithms and I'm much more aware of when to use each.

If anyone is aware of any other resources like books, online tutorials or videos I would love to hear about them!

1 comments

The Art of Computer Programming (TAOCP), Knuth

http://www-cs-faculty.stanford.edu/~uno/taocp.html

That's pretty heavy going though — I remember my algorithms lecturer suggesting we should only get those tomes for the geek points. Meanwhile, Cormen, Leiserson, Rivest and Stein's Introduction to Algorithms is relatively cheap, has good explanations, a more modern presentation of psuedocode, and a breadth of material that covers all the algorithms you could be expected to know as a general programmer, plus some more.