La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Esercizio n° 005 Problema dellordinamento di un array: Il metodo Bubble Sort. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione.

Presentazioni simili


Presentazione sul tema: "Esercizio n° 005 Problema dellordinamento di un array: Il metodo Bubble Sort. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione."— Transcript della presentazione:

1 Esercizio n° 005 Problema dellordinamento di un array: Il metodo Bubble Sort. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques

2 Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques Da un array di 10 elementi di tipo int, si vuole restituire lo stesso array ordinato in ordine crescente. Fornire sia il diagramma di flusso che il relativo codice Java. Quindi: Se in input abbiamo Es. array[0]=15; array[1]=10; array[2]=21; array[3]=5; Larray da restituire sarà il seguente: array[0]=5; array[1]=10; array[2]=15; array[3]=21; Il problema dellordinamento di un array è uno dei problemi informatici più famosi: tuttoggi ricercatori stanno studiano nuovi algoritmi con lobiettivo di trovare il metodo più veloce. Noi vedremo uno dei metodi classici: lalgoritmo Bubble Sort Lordinamento di un array: Bubble Sort

3 Come funziona il metodo Bubble Sort Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques Dato un array si prende lelemento nella prima posizione e lo si confronta con quello in seconda posizione. Se il primo è maggiore del secondo, si scambiano di posizione; altrimenti si prosegue confrontando il secondo elemento con il terzo e così via… Es.: supponiamo di voler ordinare questo array: Quando raggiungo la fine dellarray lelemento più grande è stato messo in ultima posizione; a questo punto riparto da primo e ripeto la stessa procedura, fermandomi al penultimo elemento dellarray..

4 Soluzione dellesercizio n° 005 Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques

5 Diagramma di flusso del Bubble Sort Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques Inizio temp = 0 j = lunghezza array-1 Array x Fine j > 0 i < j-1 x[i] > x[i+1] temp = x[i] x[i] = x[i+1] x[i+1] = temp j= j-1 i= i + 1 i = 0 falsovero falso vero falso

6 Traduzione in Java del D.d.F. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques public void main (String[] args) { int prova [] = {5,18,46,52,83,37,22,51,3,61}; int temp = 0; int j = prova.length; System.out.print(Array non ordinato: ); for (i=0; i 0 ){ for ( int i = 0; i < j-1; i++ ){ if ( prova[i] > prova[i+1] ){ temp = prova[i]; prova[i] = prova[i+1]; prova[i+1] = temp; }; j--; }; System.out.print(Array ordinato: ); for (i=0; i

7 Bubble Sort in azione jiArray Correnteji Nella tabella sono indicati i valori degli indici i e j del passo corrispondente, relativi al codice Java della diapositiva precedente. Sono inoltre evidenziati i valori che vengono scambiati. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione Superiore F. Enriques


Scaricare ppt "Esercizio n° 005 Problema dellordinamento di un array: Il metodo Bubble Sort. Corso di Programmazione in Java – Esercizio n° 005 Istituto Statale di Istruzione."

Presentazioni simili


Annunci Google