ABSTRACT

The Handbook of Data Structures and Applications was first published over a decade ago. This second edition aims to update the first by focusing on areas of research in data structures that have seen significant progress. While the discipline of data structures has not matured as rapidly as other areas of computer science, the book aims to update those areas that have seen advances.

Retaining the seven-part structure of the first edition, the handbook begins with a review of introductory material, followed by a discussion of well-known classes of data structures, Priority Queues, Dictionary Structures, and Multidimensional structures. The editors next analyze miscellaneous data structures, which are well-known structures that elude easy classification. The book then addresses mechanisms and tools that were developed to facilitate the use of data structures in real programs. It concludes with an examination of the applications of data structures.

Four new chapters have been added on Bloom Filters, Binary Decision Diagrams, Data Structures for Cheminformatics, and Data Structures for Big Data Stores, and updates have been made to other chapters that appeared in the first edition.

The Handbook is invaluable for suggesting new ideas for research in data structures, and for revealing application contexts in which they can be deployed. Practitioners devising algorithms will gain insight into organizing data, allowing them to solve algorithmic problems more efficiently.

part I|66 pages

Fundamentals

chapter 1|19 pages

Analysis of Algorithms *

chapter 2|12 pages

Basic Structures *

chapter 3|14 pages

Trees *

chapter 4|18 pages

Graphs *

part II|48 pages

Priority Queues

chapter 5|7 pages

Leftist Trees *

chapter 6|7 pages

Skew Heaps *

chapter 8|18 pages

Double-Ended Priority Queues *

part III|133 pages

Dictionary Structures

chapter 9|13 pages

Hash Tables *

chapter 10|19 pages

Bloom Filter and Its Variants

chapter 12|8 pages

Finger Search Trees *

chapter 13|18 pages

Splay Trees

chapter 16|15 pages

B Trees *

part IV|194 pages

Multidimensional/Spatial Structures

chapter 18|14 pages

Planar Straight Line Graphs *

chapter 20|18 pages

Quadtrees and Octrees *

chapter 21|14 pages

Binary Space Partitioning Trees *

chapter 22|16 pages

R-Trees *

chapter 23|17 pages

Managing Spatiotemporal Data

chapter 24|12 pages

Kinetic Data Structures *

chapter 25|8 pages

Online Dictionary Structures

chapter 26|8 pages

Cuttings *

part V|194 pages

Miscellaneous

chapter 29|16 pages

Tries *

chapter 30|15 pages

Suffix Trees and Suffix Arrays *

chapter 31|18 pages

String Searching

chapter 32|15 pages

Binary Decision Diagrams

chapter 33|17 pages

Persistent Data Structures *

chapter 34|16 pages

Data Structures for Sets *

part VI|126 pages

Data Structures in Langs and Libraries

chapter 41|13 pages

Functional Data Structures *

chapter 43|11 pages

Data Structures in C++

chapter 45|9 pages

Data Structure Visualization *

chapter 46|15 pages

Drawing Trees *

chapter 47|18 pages

Drawing Graphs *

chapter 48|22 pages

Concurrent Data Structures *

part VII|296 pages

Applications

chapter 49|17 pages

IP Router Tables *

chapter 52|11 pages

The Web as a Dynamic Graph *

chapter 53|15 pages

Layout Data Structures *

chapter 55|13 pages

Computer Graphics *

chapter 57|14 pages

Collision Detection *

chapter 64|16 pages

Data Mining *