AleksandarArkan

R-Invertire un vettore

Mar 26th, 2015
282
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.32 KB | None | 0 0
  1. void reverseArray(int arr[], int start, int end){
  2. /*questa funzione prende come parametro, l'array, l indice di inizio e l indice di fine.
  3. dichiariamo anche una variabile temp, poiche per scambiare due elementi tra di loro
  4. abbiamo bisogno di una un posto dove mettere temporanemente un valore, mentre stiamo mettendo
  5. l'altro nella sua poszione.*/  
  6.     int temp;
  7.    
  8.     //quando l'indice di inizio (che aumenta sempre), supera l'indice di fine( che mano a mano diminuisce)
  9.     //allora abbiamo finito.
  10.     if(start>=end)
  11.         return;
  12.     //altrimenti
  13.     /*metti nella variabile temp quel elemento che si trova in posizione start, in questo modo
  14.     ci siamo salvati il valreo di start che sta ora dentro temp. poi prendi il valore che ce in posizione
  15.     end e mettilo in posizione start, in questo modo quello che era in poszione end ora ha preso il posto e si trova
  16.     in posizione start, ora ci rimane solo da mettere il valore di start dentro ad end, il nostro valore start si trova
  17.     nella variabile temp, e andiamo a scriverlo nella poszione end.
  18.     rifacciamo la stessa cosa anche per l'elemento successivo, aumentando il valore di start
  19.     e diminuendo il valore di end. prima o poi start sorpassera' e sara' uguale a end, e li entreremo nel caso base*/
  20.  
  21.     temp=arr[start];
  22.     arr[start]=arr[end];
  23.     arr[end]=temp;
  24.     reverseArray(arr, start+1,end-1);
  25. }
Advertisement
Add Comment
Please, Sign In to add comment