Data Structures and Algorithms in Java

Front Cover
John Wiley & Sons, Jan 28, 2014 - Computers - 736 pages

The design and analysis of efficient data structures has long been recognized as a key component of the Computer Science curriculum. Goodrich, Tomassia and Goldwasser's approach to this classic topic is based on the object-oriented paradigm as the framework of choice for the design of data structures. For each ADT presented in the text, the authors provide an associated Java interface. Concrete data structures realizing the ADTs are provided as Java classes implementing the interfaces. The Java code implementing fundamental data structures in this book is organized in a single Java package, net.datastructures. This package forms a coherent library of data structures and algorithms in Java specifically designed for educational purposes in a way that is complimentary with the Java Collections Framework.

 

What people are saying - Write a review

User Review - Flag as inappropriate

it is best

Contents

Java Primer
2
8
44
1
55
ObjectOriented Design
59
Fundamental Data Structures
103
Algorithm Analysis
149
Recursion
189
Stacks Queues and Deques
225
Priority Queues
359
Sorting with a Priority Queue
385
Maps Hash Tables and Skip Lists
401
Search Trees
460
Sorting and Selection
531
Chapter
574
Text Processing
575
BoyerMoore Algorithm
586

List and Iterator ADTs
257
Using a Sorted List
294
Trees
308
2
317
3
323
4
334
Huffman Coding Algorithm
598
Graph Algorithms
611
Memory Management and BTrees
687
Bibliography
710
531
715
Copyright

Other editions - View all

Common terms and phrases

About the author (2014)

Michael Goodrich received his Ph.D. in Computer Science from Purdue University in 1987. He is currently a professor in the Department of Computer Science at John Hopkins University, and codirector of the Johns Hopkins Center for Algorithms Engineering. He is an editor for the International Journal of Computational Geometry & Applications, Journal of Computational and System Sciences, and Journal of Graph Algorithms and Applications.

Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1988. He is currently a professor in the Department of Computer Science at Brown University. He is also an editor for Computational Geometry: Theory and Applications, and the Journal of Graph Algorithms and Applications, and previously served on the editorial board of IEEE Transactions on Computers.

Michael Goldwasser, PhD in Computer Science from Stanford University, 1997; Associate Professor and Director of CS at St. Louis University; author of Object-Oriented Programming in Python, Pearson, 2008.

Bibliographic information