Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 2 odgovora
  • 2.582 pregleda

Najnovija ↓

Selection Sort (i s početka i sa kraja niza) 21.02.2010. u 22:08 · pre 203 meseca #1
Algoritam sortiranja Selection Sort sortira niz u rastućem poretku tako što se u prvom koraku pronalazi najveći element i on razmjenjuje mjesto sa posljednjim elementom niza. Zatim na isti način sortira ostatak niza (tj. kompletan niz osim posljednjeg elementa). Može i obrnuto, da sortira u opadajućem poretku, treba samo malo koda promijeniti. Evo kod za Selection Sort:

public static void selectionSort (int[] niz)
{
int temp,min;
for (int i=0; i<niz.length-1; i++) {
min = i;
for (int j = i+1; j<niz.length; j++)
if (niz[j]<niz[min])
min = j;
temp = niz;
niz = niz[min];
niz[min] = temp;
}
}


Treba napraviti da se u jednom koraku pronalaze najmanji i najveći element niza, oni mijenjaju mjesta sa prvim i posljednjim elementom, i na isti način se sortira ostatak niza.

Re: Selection Sort (i s početka i sa kraja niza) 23.02.2010. u 13:20 · pre 203 meseca #2
public static void selectionSort (int[] niz)
{
int l,d,g,temp,min,max;
l= niz.length;
d= 0;
for (int i=d; d<l && i<l-1; i++) {
max = min = i;
for (int j = i+1; j<l; j++)
{
if (niz[j]<niz[min])
min = j;
if (niz[j]>niz[max])
max = j;
}
temp = niz[d];
niz[d] = niz[min];
niz[min] = temp;
temp = niz[l];
niz[l] = niz[max];
niz[max] = temp;
d++;
l--;
}
}

Potpis
Miodrag Smiljević, dipl. ing. el.
Re: Selection Sort (i s početka i sa kraja niza) 24.02.2010. u 17:41 · pre 203 meseca #3
Evo koda:

Code:

public static void selectionSort (int[] niz)
{
   int l,i,j,temp,min,max;

   l= niz.length;
   for (i=0; i<l-1; i++) {
      max = min = i;
      for(j = i+1;j<l;j++)
      {
         if (niz[j]<niz[min]) min = j;
         if (niz[j]>niz[max]) max = j;
      }
      j--;
      if(i<min) {
         temp = niz[i];
         niz[i] = niz[min];
         niz[min] = temp;
      }
      if(max<j) {
         temp = niz[j];
         niz[j] = niz[max];
         niz[max] = temp;
      }
      l--;
   }
}

Potpis
Miodrag Smiljević, dipl. ing. el.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme