Synopses & Reviews
Fundamental data structures in a consistent object-oriented frameworkNow revised to reflect the innovations of Java 5.0, Goodrich and Tamassia’s Fourth Edition of Data Structures and Algorithms in Javacontinues 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
Synopsis
The third edition of this conceptually elegant and pedagogically innovative text continues to incorporate the object-oriented design paradigm, using Java as the implementation language, while also providing intuition and analysis of fundamental data structures and algorithms. All of this is done in a clear, friendly writing style that uses visuals to introduce and simplify important analytic and mathematical concepts.
* Entirely new chapter on recursion
* Additional exercises on the analysis of simple algorithms
* New case study on parenthesis matching and HTML validation
Synopsis
* New case study on parenthesis matching and HTML validation
Synopsis
Fundamental Data Structures Using a Consistent Object-Oriented FrameworkGoodrich and Tamassia's Third Edition of Data Structures and Algorithms in Java incorporates the object-oriented design paradigm, using java as the implementation language. 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.
Now fully revised and updated, this Third Edition features an entirely new chapter on recursion, expanded coverage of splay trees, and new examples and programming exercises throughout.
Features
- Covers analysis and design of fundamental data structures.
- Presents a consistent object-oriented viewpoint throughout the text.
- Java code examples are used extensively, with source code provided on the website.
- Hundreds of exercises that promote creativity help readers learn how to think like programmers and reinforce important concepts.
- On-line animations and an effective art program in the text illustrate data structures and algorithms in a clear, visual manner.
Access additional resources on the web (www.wiley.com/college/goodrich or www.datastructures.net), including:
- Java source code for all examples in the book
- Algorithm visualization tools
- Library of Java constructs used in the book
- Problems database and search engine
- Student hints to exercises in the book
- Instructor resources
About the Author
Professors 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 awards in this capacity. His teaching style is to involve the students in lively interactive classroom sessions 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.
The 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.
Table of Contents
1. Java Programming.
2. Object-Oriented Design.
3. Analysis Tools.
4. Stacks, Queues, and Recursion.
5. Vectors, Lists, and Sequences.
6. Trees.
7. Priority Queues.
8. Maps and Dictionaries.
9. Search Trees.
10. Sorting, Sets and Selection.
11. Text Processing.
12. Graphs.
Appendix: Useful Mathematical Facts.
Bibliography.
Index.