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

Due elementi

Precedente
SUPERIORE
Successiva

Scambiare il contenuto di due variabili

procedure SCAMBIA(Var X, Y: Elemento);
Var
   Temp: Elemento;
begin
   Temp:=X;
   X:=Y;
   Y:=Temp;
end;

Ordinare un vettore di due elementi

If(V[1] > V[2]) then
   SCAMBIA(V[1], V[2]);

Esempio

V={20, 15} --> V={15, 20}

Ordinare un sottovettore di due elementi

If(V[i] > V[i+1]) then
   SCAMBIA(V[i], V[i+1]);

Esempio

V={20, 15, 10, 3}, i=2 --> V={20, 10, 15, 3}

Una passata

Una passata su tutte le N-1 coppie, all'interno di un vettore, provoca lo spostamento "in alto" della "bolla" più grande

for i:=1 to N-1 do
   if(V[i] > V[i+1]) then
      SCAMBIA(V[i], V[i+1]);

Cioè l'elemento più grande si trova in ultima posizione alla fine della passata.

Esempio

V={20, 15, 10, 3} --> V={15, 20, 10, 3}
                  --> V={15, 10, 20, 3}
                  --> V={15, 10, 3, 20}

Due elementi - ApPuNtIdIuNiNfOrMaTiCo

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

Precedente
SUPERIORE
Successiva