Bonjour à tous,
Je bloque sur un problème et votre aide me sera très précieuse (si vous avez le temps de me donner un coup de main évidemment )
Mon problème : J'ai N fichiers. Dans chaque fichier, j'ai des données de ce type :
Ficher 1 :
1 5 6 8
1 2 3
4 5 6
2 7 8 9 10
Chaque ligne du fichier est composé d'entiers séparés donc par des espaces.
Le problème que j'ai c'est que je dois générer le produit cartésien des N fichiers.
Exemple :
Fichier 1 : ------Fichier 2 :------Fichier 3 :
1 4 5------------4 6-------------9 10
2 3--------------1 7 8
4 6
Je dois donc générer (sans redondance des entiers) :
1 4 5 6 9 10
1 4 5 7 8 9 10
2 3 4 6 9 10
2 3 1 7 8 9 10
4 6 9 10
1 4 6 7 8 9 10
Si je fais ce produit cartésien d'une manière classique, en stockant chaque ligne dans un tableau et chaque fichier sera représenté par un tableau à deux dimensions et je parcours ainsi tous les couples possibles des N tableau, ça prend un temps fou (car mes données réelles sont plus volumineuses).
La solution passe à mon avis par le choix d'une bonne structure de données. Ou alors, avez-vous, une meilleure idée. Vous avez peut être rencontré ce probléme déjà.
Tous les propositions sont les bienvenues.
Je vous en remercie grandement d'avance
Partager