Home > Store

Data Structures Using Java

Register your product to gain access to bonus material or receive a coupon.

Data Structures Using Java


  • Sorry, this book is no longer in print.
Not for Sale



  • Use of Java—An object-oriented language.
    • Allows students to move more easily from abstraction to implementation.

  • Introduction of data structure abstraction in language independent fashion.
    • Provides students with the ability to understand data structures as an abstract concept.

  • Use of algorithms—As intermediaries between English descriptions and Java programs.
    • Allows the student to focus on the method used to solve a problem.

  • Most of the concepts in the text are illustrated by several examples.
    • Allows students to visualize the processes being taught.

  • Approximately 300 exercises—Varying in difficulty.
    • Provides students with opportunity to practice concepts being taught at varying degrees of difficulty.

  • Instructor's Resource CD-ROM—Complete with solutions manual (contains all solutions), additional exercises that can be used for test questions, and source code (included within solutions manual folder).
  • Companion Website—Contains PowerPoint slides, sample syllabus (an outline of what should be covered each week during the course), chapter objectives, and source code (all programs in the book).


  • Copyright 2003
  • Dimensions: 7" x 9-1/4"
  • Pages: 688
  • Edition: 1st
  • Book
  • ISBN-10: 0-13-047721-4
  • ISBN-13: 978-0-13-047721-7

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.

Sample Content

Table of Contents

1. Introduction To Data Structures.

Information and Meaning. Arrays, Strings, and Vectors in Java. Classes and Objects in Java.

2. The Stack.

Definitions and Examples. Representing Stacks in Java. Example: Infix, Postfix and Prefix. Stack of Objects of Varying Types.

3. Recursion.

Recursive Definition and Processes. Recursion in Java. Writing Recursive Programs. Simulating Recursion. Efficiency of Recursion.

4. Queues and Lists.

The Queue and Its Sequential Representation. Linked Lists. Lists in Java. Lists in Java. An Example: Simulation Using Linked Lists. Other List Structures.

5. Trees.

Binary Trees. Binary Tree Representations. An Example: The Huffman Algorithm. Representing Lists as Binary Trees. Trees and Their Applications. Example: Game Trees.

6. Sorting.

General Background. Exchange Sorts. Selection and Tree Sorting. Insertion Sorts. Merge and Radix Sorts.

7. Searching.

Basic Search Techniques. Tree Searching. General Search Trees. Hashing.

8. Graphs and Their Applications.

Graphs. Flow Problem. Links Representation of Graphs. Graph Traversal and Spanning Forests.

9. Storage Management.

General Lists. Automatic List Management. Dynamic Memory Management.


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership