bonjour j'ai un souci dans mon code,
jai fait une fonction qui lit les mots à partir d'un texte , les stocker dans une table de hachage.
voila la structure de la table de hachage :
là yaura une condition avant l'insertion du mot, on verifie s'il existe avavnt si c'est le cas on incremente la frequence du mot sinon on l'insere.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 typedef struct L { int freq; char mot[50]; struct L *suivant; } Liste;
voilà le bout du code de la fonction
aide svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 void insere_th(Liste **TableHash, const char *mot) { TableHash = (Liste **) malloc (TAILLEHASH * sizeof(Liste *)); /* calcule le hash du mot */ unsigned int idx = hash_cle(mot); Liste *p = (Liste *)malloc(sizeof(Liste)); /* recherche du mot */ p = TableHash[idx]; while(p !=NULL) { p->freq = 1; //incrementtaion de la frequence strncpy(p->mot, mot, sizeof(p->mot)); } free(TableHash); }
merci
Partager