Je cherche à remplacer un vector<string>
et une chaîne de mappage boost::unordered_map<string, size_t>
aux indices dans le premier avec un boost::bimap
. Quelle instanciation de bimap
devrais-je utiliser? Jusqu'ici, je suis venu avecRemplacer le vecteur et table de hachage avec Boost.Bimap
typedef bimap<
unordered_set_of<size_t>,
vector_of<string>
> StringMap;
mais je ne suis pas sûr si j'ai inversé les types de collection maintenant. Aussi, je me demande si je devrais changer le collection of relations type. Est-ce qu'un vector_of_relation
serait mon meilleur choix, ou un set_of_relation
, ou tout simplement aller avec la valeur par défaut?
Ajoutez plus d'informations sur la façon dont vous prévoyez d'utiliser les données afin que nous puissions déterminer les contraintes pour accomplir ce dont vous avez besoin. –
Je voulais une bijection entre les objets 'size_t' et' string' avec un temps d'accès O (1) pour les deux et des besoins en mémoire minimaux ou modestes. –
Vos chaînes sont-elles uniques? –