sortiranje niza

Post on 08-Jan-2016

81 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Sortiranje niza. Sortiranje podataka. postupak kojim želimo bilo koju kombinaciju ulaznih podataka postaviti u ulazni ili silazni redoslijed postoje razni algoritmi koji se međusobno razlikuju po složenosti i brzini brzina algoritma je važna kad moramo sortirati veliki broj podataka. - PowerPoint PPT Presentation

TRANSCRIPT

Sortiranje niza

Sortiranje podataka

•postupak kojim želimo bilo koju kombinaciju ulaznih podataka postaviti u ulazni ili silazni redoslijed

•postoje razni algoritmi koji se međusobno razlikuju po složenosti i brzini

•brzina algoritma je važna kad moramo sortirati veliki broj podataka

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

Zadatak• osobe poredati po visini od najniže do

najviše

O čemu ovisi algoritam?

•računalo može u jednom koraku uspoređivati samo dva broja

•logično je krenuti od nekog algoritma kojeg već poznajemo

•koristiti algoritam za traženje najmanje vrijednosti

1. korak•Pronađemo najmanju vrijednost (najnižu osobu)•Zamijenimo mjesta prve i najniže osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

2. korak

•Postupak ponavljamo na rasponu od druge do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

3. korak

•Postupak ponavljamo na rasponu od treće do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

4. korak

•Postupak ponavljamo na rasponu od četvrte do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

5. korak

•Postupak ponavljamo na rasponu od pete do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

6. korak

•Postupak ponavljamo na rasponu od šeste do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

7. korak

•Postupak ponavljamo na rasponu od sedme do zadnje osobe

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

Rezultat

•osobe su poredane po veličini

V[1] V[2] V[3] V[4] V[5] V[6] V[7] V[8]

Algoritam

•kod traženja najmanje vrijednosti pamtimo njeno redno mjesto

•nakon pregledanog intervala zamjenjujemo mjesta najmanjeg i onog na početku intervala

•početak intervala nam se u svakom koraku pomiče za jedno mjesto

Kod• 1. korak:

{traženje najmanjeg na intervalu od 1. do N.}

imin:=1; for j:=2 to N do begin if v[j]<v[imin] then imin:=j; end;

{zamjena najmanjeg i prvog} t:=v[imin]; v[imin]:=v[1]; v[1]:=t;

Kod• 2. korak:

{traženje najmanjeg na intervalu od 2. do N.}

imin:=2; for j:=3 to N do begin if v[j]<v[imin] then imin:=j; end;

t:=v[imin]; v[imin]:=v[2]; v[2]:=t;

Kod• 3. korak:

{traženje najmanjeg na intervalu od 3. do N.}

imin:=3; for j:=4 to N do begin if v[j]<v[imin] then imin:=j; end;

t:=v[imin]; v[imin]:=v[3]; v[3]:=t;

Kod

•uočavamo promjene početnih vrijednosti varijable imin

•uočavamo promjene početka intervala pretraživanja

•uočavamo da koraka ima N-1 •uvodimo vanjsku petlju

Kodfor pocetak:=1 to N-1 do begin imin:=pocetak; for j:=pocetak+1 to N do begin if v[j]<v[imin] then imin:=j; end;

t:=v[imin]; v[imin]:=v[pocetak]; v[pocetak]:=t; end;

Analiza algoritma

•algoritam se uvijek izvodi u istom broju koraka

•neosjetljiv je na stupanj uređenosti početnog niza

top related