|
Loading... Data Structures and Algorithms in Javaby Michael T. Goodrich
LibraryThing recommendationsMember recommendationsLoading...
won't like
will probably not like
will probably like
will like
will love Sign up for LibraryThing to find out whether you'll like this book. 0.018 seconds to build listing no reviews | add a review
Amazon.com Product Description (ISBN 0471383678, Hardcover)Using the power of technology to go beyond the borders of the printed page, Goodrich and Tamassia have created a book that is conceptually elegant and innovative. It incorporates the object-oriented design paradigm, using Java as the implementation language while also providing the fundamental intuition and analysis of each data structure studied.(retrieved from Amazon Fri, 24 Apr 2009 07:57:51 -0400) The first test round has been closed. Visit the Open Shelves Classification group for details. |
Abebooks |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Judging by the older reviews below, he was right - the book I read seems to bear little if any resemblance to the one denounced by the other reviewers. I found it clear and readable, though it was rather basic and dry. But then, I wasn't expecting great literature - this is a introductory compsci textbook, after all. Though it could be dull at times, it generally managed to get its information across clearly, which is all it needs to do. There were some typos, of course, though probably not more than should be expected to accompany such a major revision. The book's main flaw was an index that had essentially no relation to the actual text itself. A corrected index is available at the book's Web site.
In terms of organization, Goodrich and Tamassia start off with a brief introduction to Java, object oriented design and a brief and very basic discussion of running time and asymptotic analysis. They then work their way through basic data structures and abstract data types - stacks, queues, vectors, lists, trees (general, binary, and binary search), priority queues, heaps, dictionaries, hash tables and graphs. They discuss the structures' purposes and major operations, analyze the operations' running times, and include decent, heavily-documented Java implementations of some of the structures and methods. They also do some stuff with algorithms, though generally nothing very complex or sophisticated. I used this book in an introductory data structures course at a liberal arts college, which managed to cover pretty much everything in the book with little difficulty.
There are a lot of exercises at the end of each chapter. Goodrich and Tamassia divide them up into progressively more complex "Reinforcement", "Creativity" and "Projects" sections. My instructor preferred to assign problems and programming assignments of his own creation, though, so I don't know how helpful or useful the exercises in the book actually are.
All in all, it seem Goodrich and Tamassia noticed the sort of reviews the earlier editions of this book were getting and took steps to correct the many problems they had. I expect that if you have to use the book in a data structures course, you'll find it at least reasonably clear and generally acceptable. As long as you're using the third edition, that is. (