Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Algorithme de Heap pour permuter un vecteur


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Algorithme de Heap pour permuter un vecteur
    Bonjour,

    Svp, j'essaye de programmer l'algorthme de heap pour generer toutes les permutaions possibles d'un nombre mais ça veut pas marcher. je serais tres reconnaissnate si vous pouvez me proposer une veriosn qui marche.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function y=generate(k,A)
        if (k ==1) 
            y=A
        else
     
            for i= 1:k
     
                if mod(k,2)==0
                    [A(k-1), A(i)]=deal(A(i), A(k-1)); 
                else
                    [A(k-1), A(1)]=deal(A(1), A(k-1)); 
                end 
                generate(k - 1, A)
            end
        end


    Merci d'avance.

  2. #2
    Membre actif
    Bonsoir,

    je n'ai pas regardé en détail le code, mais je pense qu'il faudrait commencer par remplacer generate(k - 1, A) par y = generate(k - 1, A)

###raw>template_hook.ano_emploi###