Algorithme:
0)DEF Proc Tri_selection (VAR T :TAB ; n :entier)
1)Pour i de 1 à n-1 faire
[pos_min←i] Pour j de i+1 à n faire
Si ( T[j] < T[pos_min])Alors
pos_min ← j
Finsi
FinPour
Si ( pos_min <> i) Alors
aux ←T[i]
t[i]←T[Pos_min]
t[pos_min]←aux
Finsi
FinPour
2)Fin Tri_selection
T.D.O locaux(Tableau de déclaration des objets locaux)
Objet | Type/Nature | Rôle |
---|---|---|
i, j, pos_min , aux | Entier |
Traduction en Pascal:
Procedure tri_selection (var T:TAB ; n:integer);
Var i,j,pos_min, aux: integer;
Begin
For i:=1 to n-1 do
begin
pos_min:=i;
for j:=i+1 to n do
if t[j] < t[pos_min] then pos_min:=j;
if i <> pos_min then
begin
aux:=t[i];
t[i]:=t[pos_min];
t[pos_min]:=aux;
end;
end;
End;