Il y a une erreur, ou tout du moins une maladresse d'expression, dans le passage intitulé "What's in a name ?". Je ne parle pas de l'espace à la française avant le point d'interrogation, mais bien de la description technique.
Si h(k1) = 42 et h(k2) = 42, alors 42 → v1 → v2 ne suffit pas à construire une table de hachage. Comment saurait-on quelle valeur correspond à la clé k1 et quelle valeur à la clé k2 ?
Il faut donc stocker, non pas une liste chaînée des valeurs, mais une liste chaînée des couples (clé, valeur) : 42 → [k1,v1] → [k2,v2].
Au final, la table de hachage ressemble donc à :
41 → [« bar », « foo »]
42 → [« clé 1 », « A noir »] → [« clé 2 », « E blanc »] → ...
# Collisions dans une table de hachage
Posté par rogo . En réponse à la dépêche Le colonel Moutarde, sur la table (de hachage), avec un livre de maths. Évalué à 10.
Il y a une erreur, ou tout du moins une maladresse d'expression, dans le passage intitulé "What's in a name ?". Je ne parle pas de l'espace à la française avant le point d'interrogation, mais bien de la description technique.
Si
h(k1) = 42eth(k2) = 42, alors42 → v1 → v2ne suffit pas à construire une table de hachage. Comment saurait-on quelle valeur correspond à la clék1et quelle valeur à la clék2?Il faut donc stocker, non pas une liste chaînée des valeurs, mais une liste chaînée des couples (clé, valeur) :
42 → [k1,v1] → [k2,v2].Au final, la table de hachage ressemble donc à :