Uvod u programiranje

Maja Čić


Sortiranje

U sljedećoj klasi upotrebljen je algoritma za sortiranje elemenata niza u rastućem redoslijedu, te se sortiran niz ispisuje :


public class SelectionSort {

   // Definiranje main metode
   public static void main(String[] args) {

     // Deklariranje varijabli i postavljanje vrijednosti
                           
      int[] arr = new int[] {2,3,5,12,1,4,9,7,4};	// niz cjelobrojnih vrijednosti

      int i = 0, j;        // indeksi petlji
      int iMin;       // indeks najmanje vrijednost niza
      int brojElemenata;           // broj elemenata niza
      int temp;            // varijabla za privremeno čuvanje vrijednosti

      brojElemenata = arr.length;

      // Sortiranje vrijednosti
      
      for ( i = 0; i <= brojElemenata-2; i++ ) {

            iMin= i;	// pretpostavljamo da je prvi element ujedno i najmanji
            // Pronalaženje najmanje vrijednosti nesortiranog dijela niza
            for ( j=i+1; j <= brojElemenata-1; j++ ) {
               if (arr[j] < arr[iMin])
                  iMin= j;
            }

            // iMin sada sadrži indeks najmanje vrijednosti u nizu, pa
            // zamijeni mjesta arr[iMin] sa arr[i] ako iMin!= i.
            if (i != iMin) {
               temp = arr[i];
               arr[i] = arr[iMin];
               arr[iMin] = temp;
            }
       }

       // Ispis sortiranih elemenata
       for ( i = 0; i < brojElemenata; i++ )
           System.out.println(arr[i]);

      
   }
}





[ prethodna stranica | Početak | sljedeća stranica ]