Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Selection Sort (i s početka i sa kraja niza)

[es] :: Java :: Selection Sort (i s početka i sa kraja niza)

[ Pregleda: 2030 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

_boby_
Student
Prnjavor

Član broj: 166280
Poruke: 21
188.124.192.*



Profil

icon Selection Sort (i s početka i sa kraja niza)21.02.2010. u 21:08 - pre 172 meseci
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.

 
Odgovor na temu

miodrags
Miodrag Smiljevic
Inženjer projektant
ISC Contact d.o.o.
Beograd

Član broj: 90519
Poruke: 18
*.dynamic.sbb.rs.

Sajt: solair.eunet.yu/~miodrags


+1 Profil

icon Re: Selection Sort (i s početka i sa kraja niza)23.02.2010. u 12:20 - pre 172 meseci
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--;
}
}


Miodrag Smiljević, dipl. ing. el.
 
Odgovor na temu

miodrags
Miodrag Smiljevic
Inženjer projektant
ISC Contact d.o.o.
Beograd

Član broj: 90519
Poruke: 18
*.dynamic.sbb.rs.

Sajt: solair.eunet.yu/~miodrags


+1 Profil

icon Re: Selection Sort (i s početka i sa kraja niza)24.02.2010. u 16:41 - pre 172 meseci
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--;
   }
}


Miodrag Smiljević, dipl. ing. el.
 
Odgovor na temu

[es] :: Java :: Selection Sort (i s početka i sa kraja niza)

[ Pregleda: 2030 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.