Data Structures and Abstractions with Java is suitable for one- or two-semester courses in data structures (CS-2) in the departments of Computer Science, Computer Engineering, Business, and Management Information Systems. This book is also useful for programmers and software engineers interested in learning more about data structures and abstractions.
This is the most student-friendly data structures text available that introduces ADTs in individual, brief chapters - each with pedagogical tools to help students master each concept. Using the latest features of Java, this unique object-oriented presentation makes a clear distinction between specification and implementation to simplify learning, while providing maximum classroom flexibility.
Teaching and Learning Experience
This book will provide a better teaching and learning experience-for you and your students. It will help:
Aid comprehension and facilitate teaching with an approachable format and content organization: Material is organized into small segments that focus a reader's attention and provide greater instructional flexibility.
Support learning with student-friendly pedagogy: In-text and online features help students master the material.
Introduction
Chapter 1: Bags
Chapter 2: Bag Implementations That Use Arrays
Chapter 3: A Bag Implementation That Links Data
Chapter 4: The Effciency of Algorithms
Chapter 5: Stacks
Chapter 6: Stack Implementations
Chapter 7: Recursion
Chapter 8: An Introduction to Sorting
Chapter 9: Faster Sorting Methods
Chapter 10: Queues, Deques, and Priority Queues
Chapter 11: Queue, Deque, and Priority Queue Implementations
Chapter 12: Lists
Chapter 13: A List Implementation That Uses an Array
Chapter 14: A List Implementation That Links Data
Chapter 15: Iterators for the ADT List
Chapter 16: Sorted Lists
Chapter 17: Inheritance and Lists
Chapter 18: Searching
Chapter 19: Dictionaries
Chapter 20: Dictionary Implementations
Chapter 21: Introducing Hashing
Chapter 22: Hashing as a Dictionary Implementation
Chapter 23: Trees
Chapter 25: A Binary Search Tree Implementation
Chapter 26: A Heap Implementation
Chapter 27: Balanced Search Trees
Chapter 28: Graphs
Chapter 29: Graph Implementations