Advertisement

Sequential and Parallel Algorithms and Data Structures

The Basic Toolbox

  • Peter Sanders
  • Kurt Mehlhorn
  • Martin Dietzfelbinger
  • Roman Dementiev
Textbook

Table of contents

  1. Front Matter
    Pages i-xv
  2. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 1-24
  3. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 25-80
  4. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 81-116
  5. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 117-151
  6. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 153-210
  7. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 211-231
  8. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 233-258
  9. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 259-269
  10. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 271-299
  11. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 301-332
  12. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 333-355
  13. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 357-392
  14. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 393-418
  15. Peter Sanders, Kurt Mehlhorn, Martin Dietzfelbinger, Roman Dementiev
    Pages 419-434
  16. Back Matter
    Pages 435-509

About this book

Introduction

This textbook is a concise introduction to the basic toolbox of structures that allow efficient organization and retrieval of data, key algorithms for problems on graphs, and generic techniques for modeling, understanding, and solving algorithmic problems. The authors aim for a balance between simplicity and efficiency, between theory and practice, and between classical results and the forefront of research. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, optimization, collective communication and computation, and load balancing. The authors also discuss important issues such as algorithm engineering, memory hierarchies, algorithm libraries, and certifying algorithms. Moving beyond the sequential algorithms and data structures of the earlier related title, this book takes into account the paradigm shift towards the parallel processing required to solve modern performance-critical applications and how this impacts on the teaching of algorithms.

 

The book is suitable for undergraduate and graduate students and professionals familiar with programming and basic mathematical language. Most chapters have the same basic structure: the authors discuss a problem as it occurs in a real-life situation, they illustrate the most important applications, and then they introduce simple solutions as informally as possible and as formally as necessary so the reader really understands the issues at hand. As they move to more advanced and optional issues, their approach gradually leads to a more mathematical treatment, including theorems and proofs. The book includes many examples, pictures, informal explanations, and exercises, and the implementation notes introduce clean, efficient implementations in languages such as C++ and Java.

Keywords

Algorithmics Algorithms Sequences Arrays Data Structures Linked Lists Hash Tables Sorting Queues Graphs Trees Optimization Load Balancing C++ Java Big Data Parallel Computing High-Performance Computing Parallel Processsing Parallelism

Authors and affiliations

  • Peter Sanders
    • 1
  • Kurt Mehlhorn
    • 2
  • Martin Dietzfelbinger
    • 3
  • Roman Dementiev
    • 4
  1. 1.Karlsruhe Institute of TechnologyKarlsruheGermany
  2. 2.Max Planck Institute for InformaticsSaarbrückenGermany
  3. 3.Technische Universität IlmenauIlmenauGermany
  4. 4.Intel Deutschland GmbHFeldkirchenGermany

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-030-25209-0
  • Copyright Information Springer Nature Switzerland AG 2019
  • Publisher Name Springer, Cham
  • eBook Packages Computer Science
  • Print ISBN 978-3-030-25208-3
  • Online ISBN 978-3-030-25209-0
  • Buy this book on publisher's site