Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Shaker Sort

Precedente
SUPERIORE
Successiva

Un bubblesort nei due sensi...

procedure SHAKERSORT(Var V: Vettore; N: Integer);
Var
   Inizio, Fine, Ultimo, i: Integer;
begin
   Inizio:=1;
   Fine:=N-1;
   Ultimo:=N-1;
   while(Inizio <= Fine) do
      begin
         for i:=Inizio To Fine do
            if(V[i] > V[i+1]) then
               begin
                  SCAMBIA(V[i], V[i+1]);
                  Ultimo:=i;
               end;
         Fine:=Ultimo-1;
         for i:=Fine DownTo Inizio do
            if(V[i] > V[i+1]) then
               begin
                  SCAMBIA(V[i], V[i+1]);
                  Ultimo:=i;
               end;
         Inizio:=Ultimo+1;
      end;
end;

Shaker Sort - ApPuNtIdIuNiNfOrMaTiCo

Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Precedente
SUPERIORE
Successiva