Features
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.
- Copyright 2019
- Dimensions: 8" x 10"
- Pages: 960
- Edition: 5th
-
Book
- ISBN-10: 0-13-483169-1
- ISBN-13: 978-0-13-483169-5
A relatable and friendly introduction to data structures and their implementation
The 5th Edition of Data Structures and Abstractions with Java introduces readers to data structures (CS-2) in a supportive, reader-friendly way. The book’s organization, sequencing, and pace of topic coverage make teaching and learning easier by:
- Focusing the reader’s attention on one concept at a time
- Providing flexibility in the order in which one can cover topics
- Clearly separating the specification of each abstract data type (ADT) from its implementation
- Placing relevant coverage of Java into Java Interludes, which you can use as needed.
To increase readability and learning potential, the numbered segments and modular presentation provide a flexible, customizable pathway through the material and focus the reader’s attention on one concept at a time. Numerous examples that mimic real-world situations provide a context for the new material and help to make it easier for audiences to learn and retain abstract concepts. The 5th Edition has a revamped structure and additional pedagogical tools to assist in mastering concepts.
Table of Contents
- 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
- 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