Johnson Trotter
curtis
-
BunoCS Messages postés 15952 Date d'inscription Statut Modérateur Dernière intervention -
BunoCS Messages postés 15952 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour à tous, excusez-moi mais j'ai un problème, je voudrais réaliser un programme en java qui affiche toutes les permutations d'après l'algorithme de Johnson Trotter et suivant le type que l'on choisit (Nombre ou Lettres) , il doit pouvoir réaliser ceci par exemple:
pour des nombres
pour n=3
123
132
312
321
231
213
pour des lettres
pour n=3
on aura
ABC
ACB
CAB
CBA
BCA
BAC
Merci beaucoup pour une solution rapide!!!
pour des nombres
pour n=3
123
132
312
321
231
213
pour des lettres
pour n=3
on aura
ABC
ACB
CAB
CBA
BCA
BAC
Merci beaucoup pour une solution rapide!!!
A voir également:
- Revue technique moteur hors bord johnson gratuit
- Photofiltre 7 gratuit - Télécharger - Retouche d'image
- Clé d'activation windows 10 gratuit - Guide
- Montage video gratuit windows - Guide
- Open office gratuit - Télécharger - Suite bureautique
- Logiciel dessin technique gratuit - Télécharger - CAO-DAO
3 réponses
Tu peux faire cela avec plusieurs boucles imbriquées ou avec une classe au comportement similaire comme celle ci :
https://codes-sources.commentcamarche.net/source/100071-enumerer-un-ensemble-comme-si-on-avait-des-boucles-imbriquees
https://codes-sources.commentcamarche.net/source/100071-enumerer-un-ensemble-comme-si-on-avait-des-boucles-imbriquees
Merci déja d'avoir repondu, mais j'insiste sur l'ordre que j'ai donné!!!
je voudrais qu'après avoir donné un order et defini le type, que le resultat soit le meme que celui que j'ai saisi précédement, merci pour la compréhension
je voudrais qu'après avoir donné un order et defini le type, que le resultat soit le meme que celui que j'ai saisi précédement, merci pour la compréhension
Je ne connaissais pas cette manière de faire. ça a l'air assez puissant
C'est le genre de code qui a un intérêt pour simplifier le développement et régler des problèmes comme la dynamisation du nombre de boucles. Mais il n'est pas possible de faire aussi efficace que de vraies boucles imbriquées. Du coup je n'ai pas vraiment chercher à l'efficacité et je me retrouve actuellement avec un temps d'itération 4 fois plus long (avec doublons) voire 10 fois plus long (sans doublon). C'est un peu moche mais ça se comprend facilement par l'appel des différentes méthode (qui prennent du temps), l'utilisation des map, etc. Et encore je n'ai pas mis de synchronisation, ce qui pourraît être nécessaire, et alourdirai encore plus le temps de calcul...
Bref, le qualificatif "puissant" n'est peut-être pas le plus approprié ;-)