Tecnica del codice di ordinamento delle bolle
Se si ordina il contenuto in un ordine, una delle tecniche più semplici esistenti è la tecnica di ordinamento a bolle. In sostanza, inizi a un'estremità dell'elenco, ti sposti uno alla volta all'altra estremità dell'elenco e, se mai raggiungi una situazione in cui due elementi sono fuori servizio, li scambi.

Questa è una delle più semplici tecniche di ordinamento esistenti, che viene insegnata in qualsiasi corso di programmazione di base.

Supponiamo che tu abbia una serie di gradi (5). Si desidera ordinare in modo che il voto più alto sia all'inizio dell'elenco e che il voto più basso sia alla fine dell'elenco. Si noti che questo NON è un CODICE REALE. Questo è un esempio del concetto, che puoi applicare a qualsiasi lingua.

Quindi riempiresti i gradi (5) con i valori. Quindi diresti:

per ctr = da 1 a 4
.for ctr2 = ctr + 1 a 5
..if Gradi (ctr) ... Temp = Grades (ctr)
... Gradi (ctr) = Gradi (ctr2)
... gradi (ctr2) = temp
..finisci se
.Il prossimo
Il prossimo

Quindi, in sostanza, hai l'anello esterno che attraversa ogni elemento, ma l'ultimo. Il ciclo interno attraversa ogni elemento non provato da qualsiasi punto del ciclo esterno, andando avanti. I due vengono confrontati e se il numero più alto non è "in primo piano", vengono scambiati.

Supponiamo che il tuo array sia 90 70 80 100 60

La prima volta attraverso il ciclo, inizi con 90 (valore 1) e lo confronti con gli altri, in ordine. 90 <70? No. Non succede nulla. 90 <80? No. È 90 <100? Sì. Il 100 prende il punto 1 e il 90 prende il punto 4. È 100 <60? No. Ora abbiamo la garanzia che il primo posto è sicuramente il numero più grande dell'intero array.

Ora lavoriamo sul secondo numero più grande. Passiamo all'arresto 2. È 70 <80? SÌ, si scambiano i punti. 80 <90? SÌ, si scambiano i punti. 90 <60? No, quindi il 90 rimane nel punto 2.

E così va, fino a quando l'intero array non viene sistemato nell'ordine corretto. Naturalmente è possibile disporre l'array in ordine crescente o decrescente semplicemente cambiando il!