Tri d'un tableau, algorithmique.

chuchub -  
 chuchub -
Bonjour,
je dois faire un algorithme avec les consignes suivantes :
Boucle principale : on prend comme point de départ le premier élément, puis le second, etc, jusqu'à l'avant dernier.
Boucle secondaire : à partir de ce point de départ mouvant, on recherche jusqu'à la fin du tableau quel est le plus petit élément et on l'échange avec le point de départ.

Je l'ai fait de cette façon :
-
Algorithme Rangement
Variables
--------Nb : tableau [1..12] d'entiers
--------nbmin, x, k, i, c : Entiers
Début
--------Pour k allant de 1 à 11 faire
-----------nbmin <=== Nb[k]
-----------x <=== k
-----------Pour i allant de k+1 à 12 faire
--------------Si Nb[i] < nbmin alors
--------------------nbmin <=== Nb[i]
--------------------x <=== i
--------------Finsi
-----------Finpour
-----------c <=== Nb[k]
-----------Nb[k] <=== nbmin
-----------Nb[x] <=== c
--------Finpour
Fin
-
Est-il faux ? (je ne pense pas)
Y a-t'il moyen de l'améliorer ?

1 réponse

  1. chuchub
     
    Algorithme Rangement
    Variables
    --------Nb : tableau [1..12] d'entiers
    --------nbcomparaison, nbmin, x, k, i, c : Entiers
    Début
    --------Pour k allant de 1 à 11 faire
    -----------nbmin, nbcomparaison <=== Nb[k]
    -----------Pour i allant de k+1 à 12 faire
    --------------Si Nb[i] < nbmin alors
    --------------------nbmin <=== Nb[i]
    --------------------x <=== i
    --------------Finsi
    -----------Finpour
    -----------Si nbcomparaison (est différent de) nbmin alors
    -----------c <=== Nb[k]
    -----------Nb[k] <=== nbmin
    -----------Nb[x] <=== c
    -----------Finsi
    --------Finpour
    Fin
    -
    Petite modification, celui-ci à l'air mieux (moins d'itérations).
    0