trishell-tri fusion

الحالة
مغلق و غير مفتوح للمزيد من الردود.

kais2503

عضو نشيط
إنضم
18 جوان 2009
المشاركات
187
مستوى التفاعل
198
svp je cherche algorithme tri shell tri fusion
c urgent
:kiss:
 

maher-1986

عضو جديد
إنضم
15 جانفي 2008
المشاركات
21
مستوى التفاعل
8
سلام اخي
تفظل TRie par shell

procedure TriShell(n : integer ; var t : tab);
var
p, k, i, j, x : integer;
begin
(* Recherche du Gap optimal qui est le résultat de *)
(* la suite récurrente : Un = 3.Un-1 + 1 *)
(* Tel que Un < n (Nombre d'éléments du tableau) *)
p := 0;
while (p < n) do p := 3 * p + 1;

while (p <> 1) do
begin
(* On affine peu à peu le Gap *)
(* Gap = 1 ==> Tri par Insertion ordinaire *)
p := p div 3;
if (p=1) then
x:=1
else
x:=n-(n mod p)+1;
for i := x to n do
begin
k := t; (* Valeur à insérer *)

(* Recherche de la position d'insertion *)
j:= i;
while (j >= p ) and (t[j - p] > k) do
begin
t[j] := t[j - p];
j := j - p;
end;

(* Insertion de la valeur à son emplacement *)
t[j] := k;
end;
end;
end;

تفظل TRie par fussion
 

kais2503

عضو نشيط
إنضم
18 جوان 2009
المشاركات
187
مستوى التفاعل
198
merci mais svp je veux trix par fusion
 
الحالة
مغلق و غير مفتوح للمزيد من الردود.
أعلى