Data Structures and Abstractions with Java, 5th edition
Published by Pearson (October 25, 2022) © 2023
- Frank M. Carrano University of Rhode Island
- Timothy M. Henry Rhode Island College
eTextbook
- Anytime, anywhere learning with the Pearson+ app
- Easy-to-use search, navigation and notebook
- Simpler studying with flashcards
- Hardcover, paperback or looseleaf edition
- Affordable rental option for select titles
uCertify
For 1- or 2-semester courses in data structures (CS-2) in the departments of computer science, computer engineering, business and management information systems.
A relatable and friendly introduction to data structures and their implementation
Data Structures and Abstractions with Java introduces students to data structures (CS-2) in a supportive, reader-friendly way. To increase readability and learning potential, the numbered segments and modular presentation provide a flexible, customizable pathway through the material.
The 5th Edition has a revamped structure and additional pedagogical tools to assist in mastering concepts. Numerous examples that mimic real-world situations provide context for the new material and help to make it easier for students to learn and retain abstract concepts.
Hallmark features of this title
- Each chapter focuses on either the specification and use of an ADT or various implementations of an ADT. The book's organization makes it easy for instructors to cover the specification of an ADT followed by that ADT's implementations, or to treat the specification and use of several ADTs before considering any implementation issues.
- Java Interludes treat pertinent aspects of Java separately from the coverage of data structures and occur throughout the book between chapters as needed. The book's focus, however, remains on data structures, not the implementation language Java.
- Safe and secure programming concepts are explained and emphasized in both design and coding.
New and updated features of this title
- NEW: Additional Notes, Security Notes, Programming Tips and Design Decisions appear throughout the book.
- NEW: Exercises and programming projects that emphasize areas of gaming, e-commerce and finance are added to most chapters.
- NEW: The appendix about Java classes is now included in the book.
- NEW: Refined explanations and illustrations improve students' understanding of difficult subject matter and reduce confusion.
- NEW: Reduced amount of Java code improves readability.
- NEW: A new chapter has been added to cover recursion, introducing grammar, languages and backtracking.
- Introduction: Organizing Data
- Prelude: Designing Classes
- Bags
- Java Interlude 1 Generics
- Bag Implementations That Use Arrays
- Java Interlude 2 Exceptions
- A Bag Implementation That Links Data
- The Efficiency of Algorithms
- Stacks
- Stack Implementations
- Java Interlude 3 More About Exceptions
- Queues, Deques, and Priority Queues
- Queue, Deque, and Priority Queue Implementations
- Recursion
- Lists
- A List Implementation That Uses an Array
- A List Implementation That Links Data
- Java Interlude 4 Iterators
- Iterators for the ADT List
- Problem Solving With Recursion
- Java Interlude 5 More About Generics
- An Introduction to Sorting
- Faster Sorting Methods
- Java Interlude 6 Mutable and Immutable Objects
- Sorted Lists
- Java Interlude 7 Inheritance and Polymorphism
- Inheritance and Lists
- Searching
- Java Interlude 8 Generics Once Again
- Dictionaries
- Dictionary Implementations
- Introducing Hashing
- Hashing as a Dictionary Implementation
- Trees
- Tree Implementations
- Java Interlude 9 Cloning
- A Binary Search Tree Implementation
- A Heap Implementation
- Balanced Search Trees
- Graphs
- Graph Implementations
Appendices
- A. Documentation and Programming Style
- B. Java Classes
- C. Creating Classes from Other Classes
Online Supplements
- Java Basics
- File Input and Output
- Glossary
- Answers to Study Questions
Timothy M. Henry has a Bachelor of Science Degree in Mathematics from the U.S. Coast Guard Academy, a Master of Science Degree in Computer Science from Old Dominion University, and was awarded a PhD in Applied Math Sciences from the University of Rhode Island. He began his IT career as an officer in the U.S. Coast Guard, and among his early tours, he was the Information Resources Manager (what is today a CIO) at the Coast Guard's training centre in Yorktown, VA.
Need help? Get in touch