La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

L’ordinamento per Selezione seleziona l’elemento con valore maggiore e lo scambia con il primo elemento del vettore. Tra gli N-1 elementi rimanenti viene.

Presentazioni simili


Presentazione sul tema: "L’ordinamento per Selezione seleziona l’elemento con valore maggiore e lo scambia con il primo elemento del vettore. Tra gli N-1 elementi rimanenti viene."— Transcript della presentazione:

1

2 L’ordinamento per Selezione seleziona l’elemento con valore maggiore e lo scambia con il primo elemento del vettore. Tra gli N-1 elementi rimanenti viene poi ricercato nuovamente quello maggiore e scambiato con il secondo e così via fino all’ultimo elemento. Obiettivo:ottenere un insieme di elementi,ordinato in maniera decrescente

3 56382 Osservazione : Per implementare l’Algoritmo abbiamo bisogno di 2 indici :  Uno che tiene conto della posizione in cui si trova l’elemento da ordinare ( primo, secondo, terzo, … )  Uno che permette di scorrere l’array alla ricerca del valore maggiore

4 56382 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=0

5 56382 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=1 A[0]<A[1] scambio

6 65382 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=1 A[0]<A[1] scambio

7 65382 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=2 A[0]>A[2] No scambio

8 65382 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=3 A[0]>A[3] scambio

9 85362 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=3 A[0]>A[3] scambio

10 85362 I passi da seguire sono i seguenti : 1)Posizionamento sul primo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il primo elemento dell’array Indice1=0 Indice2=4 A[0]<A[4] No scambio

11 85362 I passi da seguire sono i seguenti : 1)Posizionamento sul secondo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il secondo elemento dell’array Indice1=1 Indice2=1 A[1]=A[1] No scambio

12 85362 I passi da seguire sono i seguenti : 1)Posizionamento sul secondo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il secondo elemento dell’array Indice1=1 Indice2=2 A[1]>A[2] No scambio

13 85362 I passi da seguire sono i seguenti : 1)Posizionamento sul secondo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il secondo elemento dell’array Indice1=1 Indice2=3 A[1]<A[3] scambio

14 86352 I passi da seguire sono i seguenti : 1)Posizionamento sul secondo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il secondo elemento dell’array Indice1=1 Indice2=3 A[1]<A[3] scambio

15 86352 I passi da seguire sono i seguenti : 1)Posizionamento sul secondo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il secondo elemento dell’array Indice1=1 Indice2=4 A[1]>A[4] No scambio

16 86352 I passi da seguire sono i seguenti : 1)Posizionamento sul terzo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il terzo elemento dell’array Indice1=2 Indice2=2 A[2]=A[2] No scambio

17 86352 I passi da seguire sono i seguenti : 1)Posizionamento sul terzo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il terzo elemento dell’array Indice1=2 Indice2=3 A[2]<A[3] scambio

18 86532 I passi da seguire sono i seguenti : 1)Posizionamento sul terzo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il terzo elemento dell’array Indice1=2 Indice2=3 A[2]<A[3] scambio

19 86532 I passi da seguire sono i seguenti : 1)Posizionamento sul terzo elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il terzo elemento dell’array Indice1=2 Indice2=4 A[2]>A[4] No scambio

20 86532 I passi da seguire sono i seguenti : 1)Posizionamento sul quarto elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il quarto elemento dell’array Indice1=3 Indice2=3 A[3]=A[3] No scambio

21 86532 I passi da seguire sono i seguenti : 1)Posizionamento sul quarto elemento dell’array 2)Ricerca dell’elemento più grande e scambio con il quarto elemento dell’array Indice1=3 Indice2=4 A[3]>A[4] No scambio

22 #include Using namespace std; int x,N=5,temp; int V[N]; main() { for (int i=0;i<N;i++) // inserimento del vettore { cout<<"Inserire l'elemento: "<<i+1<<" "; cin>>V[i]; }

23 for (int i=0;i<N-1;i++) // dal primo al 5° elemento { x = i+1; do { if (V[ i ] <[ i+1 ]) { // effettuare scambio degli elementi temp = V[ i ]; V[ i ] = V[ x ]; V[ x ] = temp; } x++; } while( x < N ); } // visualizzazione del vettore ordinato mediante l'algoritmo cout<<"Il vettore ordinato e\' il seguente : "<<endl; for (int i=0;i<N;i++) cout<<V[i]<<endl; } // chiude il main Con FOR e WHILE

24 for (int i=0;i<N-1;i++) // dal primo al 5° elemento { for (int x=i+1;x<N;x++) // dal secondo al 6° elemento { if (V[ i ] <[ x ]) { // effettuare scambio degli elementi temp = V[ i ]; V[ i ] = V[ x ]; V[ x ] = temp; } // visualizzazione del vettore ordinato mediante l'algoritmo cout<<"Il vettore ordinato e\' il seguente : "<<endl; for (int i=0;i<N;i++) cout<<V[i]<<endl; } // chiude il main Con 2 cicli FOR annidati


Scaricare ppt "L’ordinamento per Selezione seleziona l’elemento con valore maggiore e lo scambia con il primo elemento del vettore. Tra gli N-1 elementi rimanenti viene."

Presentazioni simili


Annunci Google