One of the best algorithm books in existence. The only bad thing about this book is that it might be a bit boring to read as the author just presents the algorithm and then the implementation. The best thing about this book is it provides complete implementation of all the algorithms - while it is important to prove big-O properties of a particular algorithm, it is equally important for practicing programmers to understand the underlying machine to implement it well.