suivant: Tri par insertion
monter: Ordonner une séquence de
précédent: Ordonner une séquence de
Table des matières
Index
On utilise une liste Lrep pour mettre la liste triée.
On parcourt la liste L pour chercher l'indice jm du plus
petit élément m, puis on le met dans la liste Lrep et et on enlève
cet élément de L on enlève cet élément de L
Puis on refait la même chose avec la liste privée de son premier
élément etc..
On va utiliser mid(L,j,k) qui renvoie la sous liste de L de
longueur k qui commence à l'indice j ou mid(S,j) qui
renvoie la liste fin de L commençant à l'indice j .
Remarque À la place de mid(L,j,k) on peut aussi utiliser
L[j..j+k-1] (on met les indices de début et de fin de la sous liste) et
à la place de mid(L,j) on peut aussi utiliser
L[j..dim(L)-1].
TrierLr(L):={
local j,k,m,jm,d,Lrep;
d:=dim(L)-1;
Lrep:=[];
pour j de 0 jusque d faire
m,jm:=MiniL(L);
Lrep:=append(Lrep,m);
L:=concat(mid(L,0,jm),mid(L,jm+1));
fpour
retourne Lrep;
}:;
On utilise la même liste L pour mettre la liste triée.
On parcourt la liste L pour chercher l'indice jm du plus
petit élément m, puis on l'échange avec le premier élémment de L.
Puis on refait la même chose avec la liste privée de son premier
élément etc...C'est le tri par recherche du minimum.
TrierL(L):={
local j,k,m,jm,d;
d:=dim(L)-1;
pour k de 0 jusque d-1 faire
jm:=k;
m:=L[k];
pour j de k+1 jusque d faire
si m>L[j] alors m:=L[j];jm:=j; fsi;
fpour;
L[jm]:=L[k];
L[k]:=m;
fpour
retourne L;
}:;
On tape :
TrierLr([23,12,1,14,21,4,45,11])
Ou on tape :
TrierL([23,12,1,14,21,4,45,11])
On obtient : [1,4,11,12,14,21,23,45]
suivant: Tri par insertion
monter: Ordonner une séquence de
précédent: Ordonner une séquence de
Table des matières
Index
Documentation de giac écrite par Renée De Graeve