Cart
Free Shipping in the UK
Proud to be B-Corp

Data Structures in Java Thomas A. Standish

Data Structures in Java By Thomas A. Standish

Data Structures in Java by Thomas A. Standish


£3.49
New RRP £48.99
Condition - Very Good
Only 3 left

Summary

Using Java 1.1, this book teaches the fundamentals of data structures and algorithms. It offers pointer diagrams to help students visualize, reason about, and understand data structures.

Data Structures in Java Summary

Data Structures in Java by Thomas A. Standish

Using Java 1.1, this book teaches the fundamentals of data structures and algorithms. With this exciting new language, Tim Standish takes a fresh look at the subject matter. New challenges arise any time a new language is used, and the author meets these challenges. For example, although Java is a language without explicit pointers, this book offers pointer diagrams to help students visualize, reason about, and understand this major Data Structures topic. Standish's clear presentation helps readers tie the many concepts of data structures together with recurring themes. Central ideas-such as modularity, levels of abstraction, efficiency, and tradeoffs-serve as integrators in the book in order to tie the material together conceptually and to reveal its underlying unity and interrelationships.

About Thomas A. Standish

Thomas A. Standish is the chairman of computer science at the University of California, Irvine. In 1990-91, he became the fourth winner of University of California Irvine's Distinguished Faculty Lectureship for Teaching, the campus' highest distinction for teaching excellence. He has also been a co-winner of his department's best-teacher award, chosen by the popular vote of University of California Irvine undergraduate computer science students.



020130564XAB04062001

Table of Contents

(Each chapter, except for Chapter 1, begin with Introduction and Motivation.)

1. Preparing for the Journey.

Where Are We Going?

Blending Mathematics, Science, and Engineering.

The Search for Enduring Principles in Computer Science.

Principles of Software System Structure.

Efficiency and Tradeoffs.

Software Engineering Principles.

Our Approach to Mathematics.

Some Notes on Programming Notation.

Preview of Coming Attractions.



2. Introduction to Object-Oriented Programming.

A Rectangle Drawing Applet.

The DrawShapes Applet.

Drawing Some Conclusions.



3. Linked Data Representations.

What are Pointers? The Basic Intuition.

Using Java's Implicit Pointers - The Rudiments.

Pointer Diagramming Notation.

Linear Linked Lists.

Other Linked Data Structures.



4. Introduction to Recursion.

Thinking Recursively.

Common Pitfall - Infinite Regresses.

A Recursive Algorithm with Exponential Running Time.



5. Modularity and Data Abstraction.

Priority Queues - An Abstract Data Type.

Two Implementations for Priority Queues.

Plugging in New Kinds of Objects into Priority Queues.

Modularity and Information Hiding in Program Design.



6. Linear Data Structures - Stacks and Queues.

Some Background on Stacks.

ADTs for Stacks and Queues.

Using the Stack ADT to Check for Balanced Parentheses.

Using the Stack ADT to Evaluate Postfix Expressions.

Implementing the Stack ADT.

How Java Implements Recursive Method Calls Using Stacks.

Implementations of the Queue ADT.

More Queue Applications.



7. Lists, Strings, and Dynamic Memory Allocation.

Lists.

Generalized Lists.

Applications of Generalized Lists.

Strings.

Dynamic Memory Allocation.



8. Trees and Graphs.

Trees - Basic Concepts and Terminology.

Binary Trees.

A Sequential Binary Tree Representation.

An Application - Heaps and Priority Queues.

Traversing Binary Trees.

Binary Search Trees.

AVL Trees and Their Performance.

Two-Three Trees.

Tries.

An Application - Huffman Codes.

Graphs - Basic Concepts and Terminology.

Graph Representations.

Graph Searching.

Topological Ordering.



9. Hashing and the Table ADT.

The Table ADT.

Introduction to Hashing by Simple Examples.

Collisions, Load Factors, and Clusters.

Algorithms for Hashing by Open Addressing.

Choosing a Hash Function.

Comparison of Searching Methods Using the Table ADT.



10. Sorting.

Laying Some Groundwork.

Priority Queue Sorting Methods.

Divide-and-Conquer Methods.

Methods That Insert Keys and Keep Them Sorted.

O(n) Methods - Address Calculation Sorting.

Other Methods.

Comparison and Perspective.



Appendix A - A Review of Some Basic Java Features.


Appendix B - The Language of Efficiency.


Appendix C - Software Engineering Concepts. 020130564XT04062001

Additional information

GOR001928010
9780201305647
020130564X
Data Structures in Java by Thomas A. Standish
Used - Very Good
Hardback
Pearson Education (US)
19970903
555
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
This is a used book - there is no escaping the fact it has been read by someone else and it will show signs of wear and previous use. Overall we expect it to be in very good condition, but if you are not entirely satisfied please get in touch with us

Customer Reviews - Data Structures in Java