Programming Books C Java PHP Python Learn more Browse Programming Books
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Data Structures and Algorithms in Java Hardcover – August 24, 2005

ISBN-13: 978-0471738848 ISBN-10: 0471738840 Edition: 4th

8 New from $57.00 37 Used from $4.29
Amazon Price New from Used from
Hardcover, August 24, 2005
$57.00 $4.29

There is a newer edition of this item:

Data Structures and Algorithms in Java
$99.75
(1)
Temporarily out of stock.
Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


NO_CONTENT_IN_FEATURE

Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Product Details

  • Hardcover: 720 pages
  • Publisher: Wiley; 4 edition (August 24, 2005)
  • Language: English
  • ISBN-10: 0471738840
  • ISBN-13: 978-0471738848
  • Product Dimensions: 9.4 x 7.6 x 1.3 inches
  • Shipping Weight: 3 pounds
  • Average Customer Review: 3.6 out of 5 stars  See all reviews (14 customer reviews)
  • Amazon Best Sellers Rank: #426,671 in Books (See Top 100 in Books)

Editorial Reviews

From the Back Cover

Fundamental data structures in a consistent object-oriented framework

Now revised to reflect the innovations of Java 5.0, Goodrich and Tamassia’s Fourth Edition of Data Structures and Algorithms in Java continues to offer accessible coverage of fundamental data structures, using a consistent object-oriented framework. The authors provide intuition, description, and analysis of fundamental data structures and algorithms. Numerous illustrations, web-based animations, and simplified mathematical analyses justify important analytical concepts.

Key Features of the Fourth Edition:

  • Updates to Java 5.0 include new sections on generics and other Java 5.0 features, and revised code fragments, examples, and case studies to conform to Java 5.0.
  • Hundreds of exercises, including many that are new to this edition, promote creativity and help readers learn how to think like programmers and reinforce important concepts.
  • New case studies illustrate topics such as web browsers, board games, and encryption.
  • A new early chapter covers Arrays, Linked Lists, and Recursion.
  • A new final chapter on Memory covers memory management and external memory data structures and algorithms.
  • Java code examples are used extensively, with source code provided on the website.
  • Online animations and effective in-text art illustrate data structures and algorithms in a clear, visual manner.

Access additional resources on the web www.wiley.com/college/goodrich):

  • Java source code for all examples in the book
  • Animations
  • Library (net.datastructures) of Java constructs used in the book
  • Problems database and search engine
  • Student hints to all exercises in the book
  • Instructor resources, including solutions to selected exercises
  • Lecture slides

About the Author

Professor Goodrich and Tamassia are well-recognized researchers in algorithms and data structures, having published many papers in this field, with applications to Internet computing, information visualization,  computer security, and geometric computing. they have served as principal investigators in several joint projects sponsored by the National Science Foundation, the Army Research Office, and the Defense Advanced research Projects Agency. They are also active in educational technology research, with special emphasis on algorithm visualization systems.

Michael Goodrich received his Ph.D. in Computer Science from Purdue University in 1987. He is currently a professor in the Department of Computer Science at University of California, Irvine. Previously, he was a professor at Johns Hopkins University. He is an editor for the International Journal of Computational Geometry & Applications and Journal of Graph Algorithms and Applications.

Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1988. He is currently a professor in the Department of Computer Science at Brown University. He is editor-in-chief for the Journal of Graph Algorithms and Applications and an editor for Computational Geometry: Theory and Applications. he previously served on the editorial board of IEEE Transactions on Computers.

In addition to their research accomplishments, the authors also have extensive experience in the classroom. For example, Dr. Goodrich has taught data structures and algorithms courses, including Data Structures as a freshman-sophomore level course and Introduction to Algorithms as an upper level course. He has earned several teaching wards in this capacity. His teaching style is to involve the students in lively interactive classroom session that bring out the intuition and insights behind data structuring and algorithmic techniques. Dr. Tamassia has taught Data Structures and Algorithms as an introductory freshman-level course since 1988. One thing that has set his teaching style apart is his effective use of interactive hypermedia presentations integrated with the Web.

This instructional Web sites, datastructures.net and algorithmdesign.net, supported by Drs. Goodrich and Tamassia, are used as reference material by students, teachers, and professionals worldwide.

Customer Reviews

3.6 out of 5 stars
5 star
6
4 star
2
3 star
3
2 star
0
1 star
3
See all 14 customer reviews
Not worth keeping as a reference.
quietLee
I don't believe this is an appropriate solution when the purpose of the textbook should be to supplement the course lectures.
JRK
I learned Data Structures in C++ and this book made learning them in Java a piece of cake.
Joel Zipkin

Most Helpful Customer Reviews

33 of 34 people found the following review helpful By Jonathan Pool on November 25, 2005
Format: Hardcover
I'm finding the 4th edition reasonably clear and comprehensive. However, the book is teeming with typographical errors. Most of them are typesetting errors involving superscripts and subscripts that overlap the adjacent characters so they aren't fully legible. But there are numerous other miscellaneous typos.

So, I've been marking them in my copy, in order to submit them to the authors or publisher, but apparently they don't want to know about the typos. The "errata" section at java.datastructures.net contains no errata and no instructions on how to submit errata. I wrote to one of the authors to ask how to submit errata, but received no reply.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
5 of 5 people found the following review helpful By Rhys on January 20, 2008
Format: Hardcover
This book, as many have said, is used in numerous introductory courses in computer science. It was recently dropped by my college after it was disowned by the professors who chose it -- we students threw so much scorn on the book no one wanted to admit they had anything to do with it.

The book has a very idiosyncratic style. It likes to use some unnecessarily specific class and method names for its examples (e.g. The authors create a binary node class -- BTNode -- for you and then never use it, but go back to their BTPosition class) and fails nearly every time when it attempts to justify certain proofs about big-O and algorithm runtimes. In fact, the authors seem to think it adequate to make a broad statement and then give a simple example.

All in all, you're best finding webpages written by random professors than purchasing this morass.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
4 of 4 people found the following review helpful By JRK on April 15, 2010
Format: Hardcover Verified Purchase
I must echo the concerns that other students have presented with respect to this book. It significantly detracted from my learning of data structures in undergraduate CS. The more that I wanted to learn data structures, the more confused I became when I attempted to read the book and implement/modify the supplemental code. My instructor simply told us to stop reading the book if we became confused. I don't believe this is an appropriate solution when the purpose of the textbook should be to supplement the course lectures.

My recommendation is to seek other data structure courses if the one you are considering uses this book. If you have no other choice, be prepared to pick up another book. I need to write both a final programming assignment and a final project that uses a Binary Search Tree data structure. I cannot complete my tasks using this book as a reference. I ordered "Data Structures and Algorithms in Java (2nd Edition)" by Lafore - ISBN-10: 0672324539; ISBN-13: 978-0672324536.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 3 people found the following review helpful By quietLee on April 22, 2008
Format: Hardcover Verified Purchase
This is for the fourth edition, which from other reviews doesn't suck as bad as the first two...

It's an okay text book - but I pity anybody who doesn't have either experiance working with data structures in C or C++ OR who hasn't taken a Finite Math class specifically for CS.

Only get it because you need it for a course, spend as little as possible and then dump it on eBay as quick as you can. Not worth keeping as a reference.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 3 people found the following review helpful By Kevin P. Henzel on December 1, 2009
Format: Hardcover Verified Purchase
This text book is a terrible attempt at education. It lacks the code to demonstrate test drivers to help the learner understand how to apply any code snippets demonstrated, and also represents most of the material in garbled pseudo-code, instead of teaching from code itself.

I'm currently reading through chapter 9 - hash tables, and with the sheer lack of examples (the author thinks 3 paragraphs is enough to teach hash codes?) it makes it nearly impossible to understand this subject.

The approach the authors took in this text is to refresh the memory of the programmer who has already mastered the subject. This is NOT a text designed for those new to the subject.

Sadly, as long as educators keep falling for this hideous book, students will be continually required to spend their hard-earned cash and support the authors in this pathetic attempt at education.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Michael P. Quinn on June 22, 2008
Format: Hardcover
This was a mediocre text that is a rewrite of the same text in C++. As is common, the book reads like it was updated by search and replace.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
By Shing Shing T. Pua on June 28, 2014
Format: Hardcover Verified Purchase
Good Book !!!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

What Other Items Do Customers Buy After Viewing This Item?