Bonjour,
J'ai un probleme conceptuel et je recherche de l'aide.
J'ai un vecteur qui contient egalement un certain nombre variable de vecteurs de double:
std::vector<std::vector<double> > vecteur
J'aimerais etre capable d'extraire le produit cartesien de ce vecteur, en prenant toutes les combinaisons possibles.
Par exemple, si mon vecteur contient:
< <1 , 2, 3>, <4, 5>, <6, 7> >
J'aimerais construire les combinaisons:
<1,4,6><1,4,7>,<1,5,6><1,5,7> ... <3,5,7>
Comment faire? Comme mon nombre de vector<double> est lui-meme variable, je ne peux pas utiliser un nombre fixe de boucles for. Si jamais mon vecteur devient:
< <1 , 2, 3>, <4, 5>, <6, 7>, <8> >
la meme fonction devrait m'extraire:
<1,4,6,8>,<1,4,7,8> etc...
J'ai pense creer un tableau d'iterateurs, mais est-ce la meilleure methode? Utiliser la recursivite peut-etre ?
Merci d'avance.
Partager