Les Tri (Turbo pascal 1.5):
Le Tri Insertion const MAX = 100;
type tab = array [1..MAX] of integer;
Procedure TriInsertion(n : integer ; var t : tab);
var i, j, k : integer;
begin
for i:=2 to n do begin
k := t[i]; (* k est la valeur à insérer *)
(* dans l'endroit approprié du tableau *)
(* On décale toutes les valeurs du tableau <>
(* à droite pour vider une place pour k *)
j := i - 1;
while (j >= 1) and (t[j] > k) do begin
t[j + 1] := t[j];
j := j - 1;
end;
(* finalement la valeur k est insérée à son emplacement adéquat *)
t[j + 1] := k;
end;
end;Le Tri Shell :
Procedure Tri_Shell_Rec (Var t: TAB; n,h : integer);
Var aux,i : integer;
begin
If h > 0 Then
Begin
If n > h Then
begin
Var aux,i : integer;
begin
If h > 0 Then
Begin
If n > h Then
begin
Tri_Shell_Rec (t,n - h,h);
If t[n] < i =" h)"> t[i - h]);
t[i] := aux ;
End;
End;
Tri_Shell_Rec (t,n,h Div 3);
End;
End;
If t[n] < i =" h)"> t[i - h]);
t[i] := aux ;
End;
End;
Tri_Shell_Rec (t,n,h Div 3);
End;
End;
No Comments