UpsKrn.Hachage

Définition

/****************************************************************/
Type Hachage(TypeElement : Type) Implemente Public : ICollection(Nul Ou TypeElement) Defaut Final TailleSegment 16 ConserverObjets
/* Objet : Definition du type Hachage. */
/****************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive : /*-------------------------------------------------------------*/
/* Heritage des proprietes de ICollection. */
/*-------------------------------------------------------------*/
Prive :
/*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive :
/*-------------------------------------------------------------*/
/* Heritage des methodes d'Objet. */
/*-------------------------------------------------------------*/
Public : Prive : /*-------------------------------------------------------------*/
/* Heritage des methodes d'IIterateur. */
/*-------------------------------------------------------------*/
Public :
/*-------------------------------------------------------------*/
/* Heritage des methodes de ICollection. */
/*-------------------------------------------------------------*/
Public :
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Public :
Prive : Fin Type

Le type Hachage modélise une table de hachage. Il permet un accès plus rapide en recherche, mise à jour et suppression par rapport au type Liste du fait de l'indexation par la clé.

Le type Hachage possède un constructeur explicite permettant de construire une table de hachage comportant une fonction CalculerLaCle calculant une clé de répartition et le nombre de clés NbDeCles servant à l'éclatement. Si CalculerLaCle est Nul, l'algorithme par défaut se base sur l'adresse de l'objet. Si la valeur de CalculerLaCle dépasse celle de NbDeCles alors un modulo est utilisé.

Le type Hachage est paramétré par le type TypeElement correspondant au type d'élément de la table de hachage.

Chaque objet du type Hachage possède des moteurs d'itérations permettant de parcourir ses éléments. Les itérateurs sont numérotés de 0 à n, 0 étant l'itérateur implicite qui n'a pas besoin d'être alloué par l'appel à AllouerIterateur. Chaque itérateur alloué, une fois utilisé, doit être libéré par l'appel LibererIterateur.

Opérateurs

Le type Hachage possède les opérateurs standards suivants:

Exemple

Pour un exemple complet, merci de se référer à Hachage.

Principal
/*******/
Variable
/******/


Debut
/* Construction d'une liste a trois éléments. */
L=HachageDe("A");
L+="B";
L+="C";
/* Parcours de cette liste. */
Pour C=L.ParcoursAuDebut() JusquA L.DernierElement() Faire Fin Pour
Fin Principal

Voir aussi

Appel, ArbreBinaire, Binaire, Caractere, Date, Entier, Entrepot, Enumere, Exception, Fichier, FileDAttente, Liste, Module, Objet, Reel, Reference, Serveur, Tableau, Travail, Type et Segment pour connaître les autres types de base.

Traduction

---------