#12 in Algorithms and data structures books
Reddit mentions of Introduction to Algorithms
Sentiment score: 4
Reddit mentions: 7
We found 7 Reddit mentions of Introduction to Algorithms. Here are the top ones.
Buying options
View on Amazon.comor
Specs:
Height | 9.3 Inches |
Length | 8.2 Inches |
Weight | 4.8 Pounds |
Width | 1.9 Inches |
I've found the book by Cormen a great place to start.
A better solution might be to teach algorithms and data structures by not using a programming language at all. This is the course taken by the widely used CLRS. If the student understands the fundamentals, then applying that knowledge to any particular programming language is an implementation detail.
Edit: I guess I should also mention that CLRS is soon to catch the Java wave.
I used this one in my Algorithms class when I was studying for my CS degree. VERY good book, I highly recommend it. Algorithms tend to be pretty heavy on logarithms and some calc knowledge, which has always been a problem for me since I'm not very good with maths :(
Bonus: This book was co-authored by Ronald Rivest, one of the designers of the RSA encryption algorithm.
I prefer clrscode, mainly because it's what's used in the famous CLRS algorithms book and I like the way that looks.
You can pick up a used copy of the last edition for less than 30$: http://www.amazon.com/gp/offer-listing/0072970545/ref=sr_1_2_up_1_main_olp?s=books&ie=UTF8&qid=1301066977&sr=1-2&condition=used
If you are not using it for a class that should be fine.
CLRS aka Introduction to Algorithms
Everyone here is going to give you a bunch of 30-days or head-first books - many of which will have the ostensible impremateur of big names like Crockford and Resig.
Let me be the first to tell you to basically ignore this crap.
Read the standard, get a good reference on browser differences, then focus on real programming books that are not language specific. That's the way to rise above making jQuery plugins and "HTML5 Game Demos" of Atari 2600 games.
The standard:
http://www.ecma-international.org/publications/standards/Ecma-262.htm
Good reference on browser differences:
http://www.quirksmode.org/compatibility.html
The kinds of books you should be reading (notice the used prices please):
http://www.amazon.com/Introduction-Algorithms-CD-Rom-Thomas-Cormen/dp/0072970545/ref=sr_1_1?ie=UTF8&qid=1313160060&sr=8-1
http://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043/ref=sr_1_1?ie=UTF8&qid=1313160086&sr=8-1
http://www.amazon.com/Structure-Interpretation-Computer-Programs-Second/dp/0070004846/ref=sr_1_1?ie=UTF8&qid=1313160117&sr=8-1
http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_1?ie=UTF8&qid=1313160130&sr=8-1
http://www.amazon.com/Refactoring-Improving-Design-Existing-Code/dp/0201485672/ref=sr_1_1?ie=UTF8&qid=1313160138&sr=8-1
I'd throw in a rickroll if I could.
A deep knowledge of CSS will help. If Javascript is your hammer, CSS is your screwdriver; the two are very related in most cases (sure there are exceptions, like node servers, but they're not common.)
Like JS, the best way to learn CSS is the standard.
http://www.w3.org/TR/CSS21/
Happy hunting.