Menu
Coddy logo textTech

Ordinamento semplice

Lezione 12 di 26 del corso Gli array in C++ di Coddy.

Quando un array è ordinato, è più facile rispondere a molte domande, ad esempio qual è l'elemento più grande o più piccolo, ecc. La tecnica di base per ordinare un array consiste nell'usare due iteratori.

1. Creiamo un ciclo annidato all'interno di un ciclo for e confrontiamo l'elemento i-esimo con tutti gli elementi che lo seguono.

for(int i=0;i<m;i++){
  for(int j=i+1;j<n;j++){
    
    //confronta gli elementi
    
  }
}

2. Se l'elemento i-esimo è maggiore di quello j-esimo, scambiamo questi due.

for(int i=0;i<m;i++){
  for(int j=i+1;j<n;j++){
    
    if(arr[i]>arr[j]){
      int temp=arr[i];
      arr[i]=arr[j];
      arr[j]=temp;
    }
    
  }
}

L'array verrà ordinato.

 

 

 

 

challenge icon

Sfida

Dato un array non ordinato e la sua lunghezza n, stampa il secondo elemento più grande e il secondo più piccolo, rispettivamente, separati da uno spazio.

Provalo tu

#include<iostream>
using namespace std;


int main(){
  
int n;
cin>>n;
int arr[n];
for(int i=0;i<n;i++){
  cin>>arr[i];
}


//Code here

return 0;

}

Tutte le lezioni di Gli array in C++

Esercitati da solo: Compilatore C++ online