3° Anno TEORIA 9. Tipi di dato strutturato: vettori e record | Page 19

8 : I dati e la loro struttura nella programmazione ( ARRAY , MATRICI , RECORD ) Vers . 8.2 – Settembre 2022
Esempio : Supponiamo di volere descrivere la tecnica di ORDINAMENTO per BUBBLE-SORT ( in senso CRESCENTE ) applicata al medesimo vettore di interi di nome v costituito da quattro elementi ( ossia n = 4 ) utilizzato in precedenza .
Vettore di partenza di nome v
1
2
3
4
25
10
19
4
L ’ algoritmo sopra descritto , per ottenere l ’ ordinamento crescente del vettore , farà : INIZIO
k � n ( k = 4 ) continua � VERO ( continua = VERO )
TEST MENTRE ( continua = VERO ) ossia ( VERO = VERO )? VERO 1 ° ciclo MENTRE Inizio Prima scansione sup � k ( sup = 4 ) continua � FALSO ( continua = FALSO ) n . b . ogni volta si resetta l ’ indicatore degli scambi effettuati
i � 1 ( i = 1 ) TEST PER ( i ≤ sup-1 ) ossia ( 1 ≤ 3 ) VERO
1 ° ciclo PER 1 ° passo
confrontiamo il valore di v [ 1 ] con il valore di v [ 2 ] ( ossia v [ 1 ] > v [ 2 ]?) Primo Confronto Poiché 25 è maggiore di 10 si deve effettuare lo scambio degli elementi
k� i
( k = 1 )
continua � VERO
( continua = VERO )
i � i + 1 ( i = 1 + 1 = 2 )
1
2
3
4
10
25
19
4
TEST PER ( i ≤ sup-1 ) ossia ( 2 ≤ 3 ) VERO 2 ° ciclo PER 2 ° passo
confrontiamo il valore di v [ 2 ] con il valore di v [ 3 ] ( ossia v [ 2 ] > v [ 3 ]?) Poiché 25 è maggiore di 19 si deve effettuare lo scambio degli elementi
k� i
( k = 2 )
continua � VERO
( continua = VERO )
i � i + 1 ( i = 2 + 1 = 3 )
1
2
3
4
10
19
25
4
TEST PER ( i ≤ sup-1 ) ossia ( 3 ≤ 3 ) VERO 3 ° ciclo PER 3 ° passo
confrontiamo il valore di v [ 3 ] con il valore di v [ 4 ] ( ossia v [ 3 ] > v [ 4 ]?) Poiché 25 è maggiore di 4 si deve effettuare lo scambio degli elementi
k� i
( k = 3 )
continua � VERO
( continua = VERO )
i � i + 1 ( i = 3 + 1 = 4 )
1
2
3
4
10
19
4
25
TEST PER ( i ≤ sup-1 ) ossia ( 4 ≤ 3 ) FALSO
Secondo Confronto
Terzo Confronto
Fine Prima scansione
N . B . Alla fine della prima scansione del vettore siamo riusciti a posizionare l ’ elemento dal valore più grande alla fine del vettore ( che è risalito come una “ bolla ” in un liquido ).
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 19