J'ai besoin d'une structure de données pouvant être triée automatiquement en fonction d'une structure.Structure de données STL avec tri
struct{
int key;
int comparisonValue(size of the vector);
}
J'ai besoin sous la forme suivante:
datastructure<struct, vector<int>>
Lorsque la structure de données sont triées automatiquement en fonction de la comparisonValue et basée sur la valeur minimale de la valeur de comparaison, je voudrais obtenir le vecteur et ajouter des données à ce sujet.
Quelle structure de données pourrais-je utiliser? Puis-je utiliser la carte et y a-t-il un trieur personnalisé pour la carte?
Que faire si j'ai besoin de modifier la clé, dans ce cas la valeur de comparaison et de garder l'ordre trié?
Merci
Merci pour la réponse. J'ai implémenté la méthode. Il semble que make_pair ait besoin de surcharger l'opérateur ==. Pourquoi est-ce vrai? – Leslieg
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/bits/stl_function.h:203:23: erreur: aucune correspondance pour l'opérateur == â dans ___ __ == __yâ /usr/lib/gcc/x86_64-redhat-linux/4.5.1/../../../../include/c++/4.5.1/ bits/random.h: 3360: 3: note: le candidat est: bool std :: opérateur == (const std :: bernoulli_distribution &, const std :: bernoulli_distribution &) – Leslieg
@Leslieg: Cela ne devrait pas être le cas. Pouvez-vous poster le code que vous utilisez, avec l'erreur du compilateur? –