The Joys of Hashing

Hash Table Programming with C

Authors: Mailund, Thomas

Download source code Free Preview
  • Gives the pros and cons of different design choices when building tables
  • Walks you through the implementation of efficient hash tables
  • Contains a particular focus on teaching hash tables programming using the C programming language
see more benefits

Buy this book

eBook 19,99 €
price for Germany (gross)
  • ISBN 978-1-4842-4066-3
  • Digitally watermarked, DRM-free
  • Included format: EPUB, PDF
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Softcover 26,74 €
price for Germany (gross)
  • ISBN 978-1-4842-4065-6
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
About this book

Build working implementations of hash tables, written in the C programming language. This book starts with simple first attempts devoid of collision resolution strategies, and moves through improvements and extensions illustrating different design ideas and approaches, followed by experiments to validate the choices. 
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.

About the authors

Thomas Mailund is an associate professor in bioinformatics at Aarhus University, Denmark. 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.

Table of contents (8 chapters)

Table of contents (8 chapters)
  • The Joys of Hashing

    Pages 1-5

    Mailund, Thomas

  • Hash Keys, Indices, and Collisions

    Pages 7-20

    Mailund, Thomas

  • Collision Resolution, Load Factor, and Performance

    Pages 21-47

    Mailund, Thomas

  • Resizing

    Pages 49-99

    Mailund, Thomas

  • Adding Application Keys and Values

    Pages 101-137

    Mailund, Thomas

Buy this book

eBook 19,99 €
price for Germany (gross)
  • ISBN 978-1-4842-4066-3
  • Digitally watermarked, DRM-free
  • Included format: EPUB, PDF
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Softcover 26,74 €
price for Germany (gross)
  • ISBN 978-1-4842-4065-6
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.

Services for this book

Loading...

Bibliographic Information

Bibliographic Information
Book Title
The Joys of Hashing
Book Subtitle
Hash Table Programming with C
Authors
Copyright
2019
Publisher
Apress
Copyright Holder
Thomas Mailund
Distribution Rights
Standard Apress distribution
eBook ISBN
978-1-4842-4066-3
DOI
10.1007/978-1-4842-4066-3
Softcover ISBN
978-1-4842-4065-6
Edition Number
1
Number of Pages
XI, 206
Number of Illustrations
72 b/w illustrations
Topics