1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| #ifndef TABLE_HASH
#define TABLE_HASH
typedef struct c{
int pos;
int nl;
struct c *suivant;
}Coordonnees;
typedef struct L{
char mot[50];
Coordonnees *c;
struct L *suivant;
}Liste1;
typedef struct m{
char mot[50];
struct m *suivant;
}mots;
typedef struct L2{
int freq;
mots *m;
Coordonnees *c;
struct L2 *suivant;
}Liste;
int nb_lignes (FILE *fp)
{
int n=0;
char c;
while ((c = fgetc(fp)) != EOF)
{
if (c == '\n')
{
n++;
}
}
return n;
}
Liste *InsertionEnTete(Liste *L,char *mot);
Coordonnees *InsertionEnTeteCoordonnee(Coordonnees *C,int nl,int pos);
mots *InsertionEnTeteMot(mots *m,char mot[50]);
void AfficherListe(Liste *L);
void AfficherCoordonnees(Coordonnees *C);
void AfficheMot(mots *mot);
char *dernierMot(Liste *p);
unsigned int HashCode (char *ligne);
void AfficherTableHash(Liste **TableHash);
unsigned int ChercherMotDansTableHash(Liste **TableHash,char *mot);
void PosLigne(FILE *F,Liste **TableHash);
void frequent( Liste **TableHash , int mc);
void ParcourirElementTableHash(Liste **TableHash,char *mot);
void FiltreListe(Liste **L, int seuil);
void Generer2seq(Liste **TableHash, int seuil, Liste **seq);
Liste * GenererNseq(Liste **TableHash, int seuil,Liste **se, Liste **seq);
void GenRA(Liste * l, Liste **TableHash);
void elagage(Liste *t, Liste **s);
int calculFrequence(Liste **TableHash, char mot[50]);
Liste* supprimerElement(Liste* liste, Liste* sup);
void Verifier(Liste **L);
int MaxPos(Liste **TableHash,char mot[50],int ligne);
Coordonnees* supprimerCooredonnees(Coordonnees* liste, Coordonnees* sup) ;
mots *InsertionEnQueueMot(mots *m,char mot[50]);
void rassembler (Liste** L);
#endif |
Partager