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

per month

  • Anytime, anywhere learning with the Pearson+ app
  • Easy-to-use search, navigation and notebook
  • Simpler studying with flashcards
$165.32

  • Hardcover, paperback or looseleaf edition
  • Affordable rental option for select titles

uCertify

from$120.00

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
  1. Bags
    • Java Interlude 1 Generics
  2. Bag Implementations That Use Arrays
    • Java Interlude 2 Exceptions
  3. A Bag Implementation That Links Data
  4. The Efficiency of Algorithms
  5. Stacks
  6. Stack Implementations
    • Java Interlude 3 More About Exceptions
  7. Queues, Deques, and Priority Queues
  8. Queue, Deque, and Priority Queue Implementations
  9. Recursion
  10. Lists
  11. A List Implementation That Uses an Array
  12. A List Implementation That Links Data
    • Java Interlude 4 Iterators
  13. Iterators for the ADT List
  14. Problem Solving With Recursion
    • Java Interlude 5 More About Generics
  15. An Introduction to Sorting
  16. Faster Sorting Methods
    • Java Interlude 6 Mutable and Immutable Objects
  17. Sorted Lists
    • Java Interlude 7 Inheritance and Polymorphism
  18. Inheritance and Lists
  19. Searching
    • Java Interlude 8 Generics Once Again
  20. Dictionaries
  21. Dictionary Implementations
  22. Introducing Hashing
  23. Hashing as a Dictionary Implementation
  24. Trees
  25. Tree Implementations
    • Java Interlude 9 Cloning
  26. A Binary Search Tree Implementation
  27. A Heap Implementation
  28. Balanced Search Trees
  29. Graphs
  30. Graph Implementations

Appendices

  • A. Documentation and Programming Style
  • B. Java Classes
  • C. Creating Classes from Other Classes

Online Supplements

  1. Java Basics
  2. File Input and Output
  3. Glossary
  4. Answers to Study Questions
Frank M. Carrano is Professor Emeritus of Computer Science at the University of Rhode Island. He received his Ph.D. degree in Computer Science from Syracuse University in 1969. His interests include data structures, computer science education, social issues in computing, and numerical computation. Professor Carrano is particularly interested in the design and delivery of undergraduate courses in computer science. He has authored several well-known computer science textbooks for undergraduates.

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

Pearson+

All in one place. Pearson+ offers instant access to eTextbooks, videos and study tools in one intuitive interface. Students choose how they learn best with enhanced search, audio and flashcards. The Pearson+ app lets them read where life takes them, no wi-fi needed. Students can access Pearson+ through a subscription or their MyLab or Mastering course.

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable upon changing cookie preferences. Disabling cookies may affect video functionality. More info...

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â