The Joys of Hashing - Thomas Mailund

The Joys of Hashing

Hash Table Programming with C

(Autor)

Buch | Softcover
218 Seiten
2024 | Second Edition
Apress (Verlag)
979-8-8688-0825-8 (ISBN)
53,49 inkl. MwSt

Build working implementations of hash tables, written in the C programming language. The new and revised Second Edition has been enhanced with simplified code and more comprehensive explanations, aimed at improving clarity and comprehension while exploiting the latest features in C programming.

This book starts with simple first attempts devoid of collision resolution strategies. It then progresses through improvements and extensions illustrating different design ideas and approaches, followed by experiments to validate the choices. You will learn how hash tables, when implemented and used appropriately, are exceptionally efficient data structures for representing sets and lookup tables, providing low overhead, constant time, insertion, deletion, and lookup operations. 

The Joys of Hashing walks you through the implementation of efficient hash tables and the pros and cons of different design choices when building tables. The source code used in the book is available on GitHub for your re-use and experiments.

What You Will Learn

  • Master the basic ideas behind hash tables
  • Carry out collision resolution, including strategies for handling collisions and their consequences for performance
  • Resize or grow and shrink tables as needed
  • Store values by handling when values must be stored with keys to make general sets and maps

Who This Book Is For

Those with at least some prior programming experience, especially in C programming.

Thomas Mailund is a former associate professor in bioinformatics at Aarhus University, Denmark, and currently Senior Software Architect at the quantum computing company Kvantify. He has a background in math and computer science, including experience programming and teaching in C and R programming languages.  For the last decade, his main focus has been on genetics and evolutionary studies, particularly comparative genomics, speciation, and gene flow between emerging species.

1. The Joys of Hashing.- 2. Hash Keys, Indices and Collisions.- 3. Collision Resolution, Load Factor and Performance.- 4. Resizing.- 5. Adding Application Keys and Values.- 6. Heuristic Hash Functions.- 7. Universal Hashing.- 8. Conclusions.

Erscheinungsdatum
Zusatzinfo 74 Illustrations, black and white; XI, 218 p. 74 illus.
Verlagsort Berlin
Sprache englisch
Maße 155 x 235 mm
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Informatik Theorie / Studium Compilerbau
Schlagworte C • Code • Data • hash • language • Maps • programming • source • Tables
ISBN-13 979-8-8688-0825-8 / 9798868808258
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und Anwendungen

von Hanspeter Mössenböck

Buch | Softcover (2024)
dpunkt (Verlag)
29,90
a beginner's guide to learning llvm compiler tools and core …

von Kai Nacke

Buch | Softcover (2024)
Packt Publishing Limited (Verlag)
49,85