est-il possible d'utiliser std :: Next_permutation () pour permuter les éléments d'un vecteur d'une classe que j'ai créée? p>
Comment le paramètre de comparaison dans Next_permutation () fonctionne-t-il? P>
3 Réponses :
Oui, le moyen le plus simple est de remplacer l'opérateur EDIT: non testé mais pour ce que ça vaut la peine: p>
Je ne sais pas, n'était pas moi, je n'ai même pas de compte ... merci pour votre réponse
chose certaine; Il vous suffit de passer un itérateur au premier élément et d'un au dernier élément, comme d'habitude avec des algorithmes stl. P> Li>
C'est un cocceur utilisé pour comparer des éléments de votre vecteur (ou conteneur en général); Il devrait se comporter comme tout Au fait, si vous définissez un
est-il possible d'utiliser std :: Next_permutation () pour permuter les éléments d'un vecteur d'une classe que j'ai créée? p>
oui! p>
essayez ceci p>
xxx pré> Comment le paramètre de comparaison dans Next_permutation () fonctionne-t-il? P> blockQuote>
Ce pourrait aider p> blockquote >
Merci de votre réponse, mais peut-être que je n'étais pas assez explicite. Dis que j'ai une classe avec plusieurs propriétés différentes, et pas nécessairement des INT. Dois-je surcharger les opérateurs de comparaison de la classe pour que le vecteur soit permuté?
@Prasoonsaurav, que se passe-t-il si des doublons existent? Next_permutation () sautera automatiquement la même permutation?