[Visual C++] hashtable

hashtable [Visual C++] - Programmation

Marsh Posté le 05-07-2001 à 16:02:40    

comment on fait des hashtable (comme celle de java) en c++ ?
en gros c pr stocker temporairement une matrice a 4 colonnes (id, sujet, champ, valeur), n lignes
et faire des recherches sur sur l'id

Reply

Marsh Posté le 05-07-2001 à 16:02:40   

Reply

Marsh Posté le 05-07-2001 à 16:06:33    

si c'est juste pour une recherche sur un int, tu peux faire un bête arbre binaire.

Reply

Marsh Posté le 05-07-2001 à 16:10:42    

oui bien sur ms en fait je voulais savoir s'il y avait des trucs tt fait comme en java histoire de pas reinventer la roue...

Reply

Marsh Posté le 05-07-2001 à 16:43:18    

CMap ca a l'air de correspondre a ce que je veux

Reply

Marsh Posté le 05-07-2001 à 17:16:50    

>CMap ca a l'air de correspondre a ce que je veux  
 
Ben quitte à utiliser des map, utilise celle de la STL, pas celle spécifique à microsoft. Même si la STL avec visual C++ est par défaut celle de MS, au moins la syntaxe est la même que pour les autres STL.
 
donc #include "map"
 
le template hash n'est malheureusement pas encore de la STL. ca va peut être evenir. C'est deja dans celle de sgi.

Reply

Marsh Posté le 06-07-2001 à 01:12:22    

class Moninfo;
...
 
#include <map>
using namespace std;
 
map<int,Moninfo> table;
 
est un arbre binaire ou le temps de recherche est logarithmique. Une hash-table permettra de gagner un peu de perfomance, mais c'est pas critique, cf un post un peu plus vieux.
 
Enfin, pour l'algorithmie, évite les MFC comme la peste. C'est bien pour l'affichage, mais c'est moins bien que la STL et surtout c'est PROPRIETAIRE et PAS PORTABLE.
 
 
si tu veux insérer un truc dans la map, tu peux faire
 
Moninfo info(...);
int idinfo=...;
table[idinfo]=info;
 
et voilà


---------------
-----------------------
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed