Une table de hachage est un type d'outil permettant de stocker des informations. En informatique, ces outils de suivi des informations, ou des données, sont appelés structures de données. Une table de hachage est une structure de données qui utilise une fonction de hachage pour garder une trace de l'endroit où les données sont placées. Chaque information à stocker porte un nom, appelé clé. Par exemple, une clé peut être le nom d'une personne. Chaque nom est associé à une donnée appelée valeur, comme le numéro de téléphone de la personne.

Les données sont conservées dans une autre structure de données appelée tableau, qui est comme plusieurs boîtes, ou seaux, dans une rangée pour contenir les données. Chaque case comporte un nombre commençant à 0 et allant en augmentant.

L'idée derrière une table de hachage est de déterminer quelle case doit contenir des données en n'utilisant que son nom. Cela signifie que, quel que soit le nombre de cases remplies, vous pouvez toujours trouver rapidement une information si vous avez son nom. La table de hachage utilise une fonction de hachage pour déterminer le numéro dans lequel placer les données à partir de son nom. La fonction de hachage lit un nom et renvoie un numéro.

Un bon Hash Table trouvera toujours l'information à la même vitesse, quelle que soit la quantité de données introduite. De nombreuses tables de hachage permettent également à l'utilisateur d'entrer des paires clé/valeur (un nom et ses données) et de les sortir à la même vitesse.

C'est pourquoi les tables de hachage peuvent souvent trouver des informations plus rapidement que d'autres outils, tels que les arbres de recherche ou d'autres structures de recherche de tables. C'est pourquoi ils sont utilisés dans de nombreux types de logiciels informatiques. Elles sont surtout utilisées pour les tableaux associatifs, les bases de données, les caches et les ensembles.