Bonjour,
Comment savoir le plus rapidement possible si un élément existe déjà dans un std::set?
Je vous remercie par avance.
Cordialement,
Rodrigue
Bonjour,
Comment savoir le plus rapidement possible si un élément existe déjà dans un std::set?
Je vous remercie par avance.
Cordialement,
Rodrigue
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 std::set<T> monSet; T elementATrouver; if(monSet.find(elementATrouver)!=monSet.end()) { // l'element est dedans } else // monSet.find(elementATrouver)==monSet.end() { // l'element n'est pas dedans }
Merci! Je pensais à la même chose. Que penses-tu du fait d'utiliser un hash_set plutôt qu'un set?
http://www.sgi.com/tech/stl/hash_set.html
Comme ce n'est pas un conteneur standard, tu n'es pas sûr de l'avoir partout![]()
Pareil que Miles, plus le fait que je n'ai jamais eu de problèmes de performance avec des set, même contenant plusieurs millions d'éléments (dans mon cas, un ensemble de voxels d'un objet 3D).
Ok! Merci beaucoup pour toutes ses infos![]()
Roulious tu travailles sur quel type d'application? Pour ma part, je m'amuse sur des calculs de radiosité... Mais au-delà d'un certains nombres d'éléments c'est impossible d'inverser cette satanée matrice. J'utilise Gauss-Seidel pour le moment, peut-être qu'il faudrait que je me tourne la technique de relaxation...
Partager