1 /******************************************************************************/
2 /* Hachage par chainage */
3 /******************************************************************************/
8 /* on choisit M tres petit pour tester le programme, mais en realite,
13 typedef struct cellule
{
15 struct cellule
*suivant
;
24 /* "mauvaise" fonction de hachage - juste pour tester le programme */
33 for (i
= 0; i
< M
; i
++)
38 int rechercher(element x
, t_table t
)
51 int inserer(element x
, t_table
* t
)
52 /* retourne 0 si x est deja dans la table */
55 Cellule
*p
= t
->T
[i
], *preced
= NULL
;
65 t
->T
[i
] = (Cellule
*) malloc(sizeof(Cellule
));
67 t
->T
[i
]->suivant
= NULL
;
69 preced
->suivant
= (Cellule
*) malloc(sizeof(Cellule
));
70 preced
->suivant
->valeur
= x
;
71 preced
->suivant
->suivant
= NULL
;
79 printf("%d\t", L
->valeur
);
84 void afficher(t_table t
)
89 for (i
= 0; i
< M
; i
++)
91 printf("t[%d]=\t", i
);
98 /******************************************************************************/
107 printf("%d\n", rechercher(3, t
));
108 printf("%d\n", rechercher(12, t
));
121 /*****************************************************************************
122 Etat de la table a la fin du programme
123 --------------------------------------
127 *****************************************************************************/