Permutation

wafer -  
wafer Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je veux savoir comment écrire le programme qui fourni toute les matrice résultats de permutation des n lignes de la meme matrice A (n! matrices) c'est dans le but de calculer les diagonales et aficher le maximum.
merci
A voir également:

4 réponses

dindoun Messages postés 1028 Date d'inscription   Statut Membre Dernière intervention   135
 
salut
quel langage
pourquoi tu n'y arrives pas?
1
wafer Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,
merci dindoun,
c'est en utilisant Matlab, pourquoi! uniquement pour la simple raison: je ne sai pas trop faire la programation et les fonction de Matlab, je me demande si il y a une fonction qui fait la permutation? je n'ai pas réusit à trouver une réponce sur le help.
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
D'un point de vue mathématiques, il n'est pas nécessaire de connaitre toutes les permutations pour faire des calculs sur des matrices... Fort heureusement d'ailleurs, car d'un point de vue informatique on ne fait JAMAIS d'algorithme de complexité exponentielle, qui sont bien trop gourmandes en ressources !

Précises un peu plus quel langage tu utilises, mais aussi les calculs que tu veux faire... qu'est-ce que tu entends par calcul de diagonales d'une matrice, ou le maximum d'une matrice, et quel rapport avec les permutations ???
0
wafer Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
salut KX,
j'utilise matlab donc c'est le langage de matlab ! le but c'est d'avoir le maximum(summe(diag(Ai))), sur l'ensemble des matrice qu'on peut obtenir quand on fait la permutation des lignes qui nous fournis n! matrices différente.
j'espaire que je les bien dit maintenant!
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Tu n'as pas vraiment expliquer ce que tu entends par diagonale, mais si tu envisage toutes les permutations de lignes possibles, le maximum de tes diagonales (si j'ai pas trop mal compris), devrait être la somme des maximums de chaque lignes...
|123| on permute |312|
|456|		 |564|
|789|		 |789|
ta somme max est donc 3+6+9=max(1,2,3)+max(4,5,6)+max(7,8,9)

PS. je ne connais pas MatLab
0
wafer Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,
je cherche comment écrire sur matlab: max[sum(diagonal)] sur l'ensemble des n! matrices (permutation de A de n lignes)!
0