Hashage
From Mesdoc
Cependant, pour implémenter une table de hashage, les nombreuses contraintes de sécurité ne sont pas nécessaires. En général, il suffit de s'assurer que pour l'ensemble des chaînes à indexer, la fonction doit être raisonnablement homogène et ne pas favoriser les collisions. Une fonction classiquement utilisée est la suivante :
int hash_classic(char *name) { int accum = 0; int len; len = strlen(name)); accum = 0; for (;len > 0; len--) { accum <<= 1; accum += (unsigned) (*name++ & 0xFF); } return accum; }
http://ilay.org/yann/articles/hash/
[edit] Attente
Info: GData was started by Gravix as just a project to kill time. It started off as a collection of hashes from 2 dictionaries: TheArgon (albeit cropped) and GDict (Gravix's personal dictionary). The hashes were set up in patterns to allow for faster access time (literally over 60000 times faster than a normal hash database). It later grew and includes CrackLib and all languages from swedish to japanese. When it was originally posted, the database contained a whopping 5.65 million unique entries weighing in at just over 200 mb. The unexpected popularity of the project led its founder to create a website dedicated to it: GDataOnline.com.
[edit] Recherche
http://fr.wikipedia.org/wiki/Fouille_de_textes
MySQL Full-Text Searching with PHP
http://www.phpfreaks.com/tutorials/129/0.php