views:

108

answers:

3

I just noticed that I have a very old copy of Intro to Algorithms (1st ed.) in my bookshelf that I haven't opened yet. Seeing that now, it's already in the 3rd edition, I would like to know if it's still relevant or would it be best if I get myself the latest 3rd edition instead for learning algorithms.

I've been really wanting to become better in algorithms to further develop my programming and general problem solving capabilities. Thanks!

A: 

Cormen... Cormen never changes... But seriously if it means you have to buy a new copy, then I'd say stick to whatever you have. I don't know what were the differences between the editions but I doubt the algorithms/theory changed much since ed 1 (like, at all). Personally I'm also rereading CLR atm (because I also want to brush up my algorithms) and the edition I'm using is 12-13years old. If you really want to "waste" some money maybe get some more books like The Algorithm Design Manual (I really want to get it myself but damn 50-60$ is kinda pricey)?

Zenzen
+3  A: 

from google books:

The first edition became a widely used text in universities worldwide as well as the standard reference for professionals. The second edition featured new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming. The third edition has been revised and updated throughout. It includes two completely new chapters, on van Emde Boas trees and multithreaded algorithms, and substantial additions to the chapter on recurrences (now called "Divide-and-Conquer"). It features improved treatment of dynamic programming and greedy algorithms and a new notion of edge-based flow in the material on flow networks. Many new exercises and problems have been added for this edition

The basics of data structures are well-known and don't change. 2nd/3rd editions include some of the more advanced algorithms/data structures. If you just want the basics, don't bother getting a new edition -- 1st ed is still very relevant. Otherwise an updated edition may be useful.

There have been recent improvements in algorithms / datastructures, including skip lists, lock-free concurrent data structures, and amortized data structures.

Jason S
A: 

As mentioned, no, anything you'd need is already in the 1st edition, you have no reason to buy a newer one (it's not like books about a rapidly evolving technology), however

I've been really wanting to become better in algorithms to further develop my programming and general problem solving capabilities. Thanks!

I'd really advise against using CLR for the task you are setting. I know this is a personal opinion, but I feel like CLR is more of a reference textbook, to be used with caution and a prior indication of what you are looking for, then an all purpose algorithmic textbook. There are many other choices, I'm not sure which to recommend, but perhaps Algorithms by Dagupta, Papadimitriou, et al. would suit you, as it delves rather more into algorithmic paradigms (how to solve a problem using one of three/four algorithm "templates") then with the cogs of specific algorithms---yes, this is a discussion that is also featured as a part of CLR, but in my opinion, with much less tact and pedagogy.

Besides with that last book, money, or which edition to buy shouldn't be an issue as the book is... freely available. (Thank you authors.)

Jérémie