Adloun

NSI (terminale) · Chapitre 2 · Exercice d'entraînement

Une fonction de hachage maison

Dictionnaires et tables de hachage · Tables de hachage · niveau 2

Énoncé

Une fonction de hachage maison.

On veut ranger des mots dans une table de taille résolue par chaînage (chaque case est une liste de mots).

  • Écrire une fonction h_somme(mot, m) qui renvoie la somme des codes des caractères du mot (fonction ord), modulo m, puis une fonction remplir(mots, m, h) qui renvoie la table obtenue en insérant les mots avec la fonction de hachage h.
  • Remplir la table avec les mots "chien", "loup", "niche", "ours", "lion", "chine". Pourquoi "chien", "niche" et "chine" tombent-ils forcément dans la même case ?
  • On propose h_poly, qui calcule pour chaque caractère en partant de . Comparer les deux tables.

Un exercice à chercher : son corrigé n'est pas publié. Sur Adloun, le tuteur guide par questions, sans donner la réponse.

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre