This book employs an object-oriented approach to teaching data structures using Java. Many worked examples and approximately 300 additional examples make this book easily accessible to the reader. Most of the concepts in the book are illustrated by several examples, allowing readers to visualize the processes being taught. Introduces abstract concepts, shows how those concepts are useful in problem solving, and then shows the abstractions can be made concrete by using a programming language. Equal emphasis is placed on both the abstract and the concrete versions of a concept, so that the reader learns about the concept itself, its implementation, and its application. For anyone with an interest in learning more about data structures.
Data Structures Using Java is an introduction to data structure abstraction. It provides information on abstract concepts and shows students how those concepts are useful in problem solving. It goes on to demonstrate that abstractions can be made concrete by using Java.
Java is an appropriate language to use in teaching the concepts of data abstraction since it contains the control structures necessary to make programs readable and allows basic data structures such as stacks, linked lists and trees to be implemented in a variety of ways.
Data Structures Using Java guides the reader through the steps of how to identify a problem, implement a solution, and apply the solution to a real-world situation. This book is also a valuable reference for professional programmers.
Key Features:
- Algorithms are explained in detail and analyzed showing step-by-step solutions to real-world problems.
- Issues and pitfalls that may occur as algorithms are transformed into programs are discussed.
- Each data structure is implemented in a variety of ways that demonstrate the real choices and trade-offs programmers face.
- Concepts in the text are illustrated by several examples (such as postfix notation, multiword arithmetic, etc.).
- Additional supplementary materials are available to the instructor. These include chapter objectives, PowerPoint slides of most of the figures in the text, solutions (and, when applicable, working code) to the end-of-chapter exercises, and working versions of all the code in the text.