pour répondre plus spécifiquement à ta question, non la formule 1 est une formule de congruance. dans ton programme en c tu devra donc calculer avec une librairie sur les grand nombres :
char* a = "une chaine";
unsigned long long hash; // hash sur 64 bits => 2^64 =
hash = modulo(a,18446744073709551616L);
tu dois donc trouver une librairie capable de calculer le modulo de grand nombres, à toi de convertir ta chaine dans la représentation interne des grands nombres pour cette librairie.
[^] # Re: modulo
Posté par ecyrbe . En réponse au message fonction de hashage de chaine de characteres. Évalué à 1.
char* a = "une chaine";
unsigned long long hash; // hash sur 64 bits => 2^64 =
hash = modulo(a,18446744073709551616L);
tu dois donc trouver une librairie capable de calculer le modulo de grand nombres, à toi de convertir ta chaine dans la représentation interne des grands nombres pour cette librairie.