Question

Connaissez-vous une bonne et libre utilisation de Hashtable pour Delphi 5?

Je dois organiser une énorme quantité de données dans un environnement hastable et je suis un peu inquiet des problèmes de fuite de mémoire que j'ai rencontrés dans la plupart des implémentations disponibles sur le Web.

Tks

Était-ce utile?

La solution

Vous pouvez également consulter les TurboPower SysTools Open-source / anciennement commerciaux. Pas sûr de combien il est mis à jour. À un moment donné, Julian Bucknall l'a recommandé à sa bibliothèque EZDSL , bien que cela remonte à l'époque. fourrure travaillée TurboPower et elle était maintenue / mise à jour.

Autres conseils

Vous pouvez essayer mon GpStringHash . Garanti aucune fuite de mémoire, mais ne fonctionne qu'avec des chaînes. Je pense que cela devrait fonctionner en D5.

EZDSL est une bibliothèque de structures de données, y compris une table de hachage, écrite par Julian Bucknall de TurboPower et DevExpress ... Je ne les ai pas utilisées, mais j'attendais beaucoup du code de ce type.

http://www.boyet.com/FixedArticles/EZDSL.html

Vous pouvez essayer de rechercher dans Koders .
//www.koders.com/info.aspx?c=ProjectInfo&pid=U5NFKE7M3K28N9L9SLCK8SU31A&s=THashTable "rel =" aucune erreur de suivi "> Projet Winjab ) ou JCL .

NOTE: Voir la licence des codes avant de l’utiliser.

Peter Below vient de publier une retouche de ce qu’il a fait dans les nouveaux groupes Embarcadero du public. Il y a quelque chose sous son profil sur le site CodeGear à l'adresse http://cc.codegear.com/Item/24825 taht le décrit.

Checkout DeCAL , qui inclut des tables de hachage et davantage de structures de données.

Hormis l'implémentation réelle de la table de hachage, la fonction de hachage elle-même est également importante.

Un bon exemple est une fonction de hachage de Bob Jenkins, lisez son article ici . .

Cet algorithme a été amélioré récemment pour les cas où l'entrée est de taille DWord ( Voir le C -version ici ). Cette version est plus rapide et donne deux valeurs de hachage 32 bits au lieu d'une. (Cette seconde valeur de hachage peut être utilisée pour accélérer la sélection dans le compartiment, par exemple.)

Pour ceux que ça intéresse, je pourrais coller la traduction de Delphi ici? (Environ 170 lignes de code.)

RBS Antidot est une très bonne bibliothèque de conteneurs (y compris UnsortedMap basé sur un hachage). .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top