Synopses & Reviews
With its focus on creating efficient data structures and algorithms, this comprehensive text helps readers understand how to select or design the tools that will best solve specific problems. It uses Java
as the programming language and is suitable for second-year data structure courses and computer science courses in algorithm analysis.
Techniques for representing data are presented within the context of assessing costs and benefits, promoting an understanding of the principles of algorithm analysis and the effects of a chosen physical medium. The text also explores tradeoff issues, familiarizes readers with the most commonly used data structures and their algorithms, and discusses matching appropriate data structures to applications. The author offers explicit coverage of design patterns encountered in the course of programming the book's basic data structures and algorithms. Numerous examples appear throughout the text.
Comprehensive treatment focuses on creation of efficient data structures and algorithms and selection or design of data structure best suited to specific problems. This edition uses Java as the programming language.
A comprehensive treatment focusing on the creation of efficient data structures and algorithms, this text explains how to select or design the data structure best suited to specific problems. It uses Java as the programming language and is suitable for second-year data structure courses and computer science courses in algorithmic analysis.
About the Author
Clifford A. Shaffer is a Computer Science Professor at Virginia Commonwealth University (Virginia Tech).
Table of Contents
Preface I Preliminaries 1. Data Structures and Algorithims 2. Mathematical Preliminaries 3. Algorithim Analysis II Fundamental Data Structures 4. Lists, Stacks, and Queues 5. Binary Trees 6. Non-Binary Trees III Sorting and Searching 7. Internal Sorting 8. File Processing and External Sorting 9. Searching 10. Indexcing IV Advanced Data Structures 11. Graphs 12. Lists and Arrays Revisited 13. Advanced Treetructures V Theory of Algorithims 14. Analysis Techniques 15. Lower Bounds 16. Psatterns of Algorithims 17. Limits to Computation Bibliography Index