Presentation is loading. Please wait.

Presentation is loading. Please wait.

- metodom zamjene susjednih elemenata niza

Similar presentations


Presentation on theme: "- metodom zamjene susjednih elemenata niza"— Presentation transcript:

1 - metodom zamjene susjednih elemenata niza
Sortiranje niza - metodom zamjene susjednih elemenata niza

2 Zadatak osobe poredati po visini od najniže do najviše V[1] V[2] V[3]

3 O čemu ovisi algoritam? računalo može u jednom koraku uspoređivati samo dva broja uspoređujemo po dva susjedna elementa u nizu zamjenjujemo im mjesta ako nisu u dobrom poretku

4 Prvo ponavljanje - 1. korak
uspoređujemo prvu i drugu osobu nisu u dobrom poretku pa im zamjenjujemo mjesta V[1] V[2] V[3] V[4] V[5] V[6]

5 2. korak uspoređujemo drugu i treću osobu V[1] V[2] V[3] V[4] V[5]

6 3. korak uspoređujemo treću i četvrtu osobu V[1] V[2] V[3] V[4] V[5]

7 4. korak uspoređujemo četvrtu i petu osobu V[1] V[2] V[3] V[4] V[5]

8 5. korak uspoređujemo petu i šestu osobu V[1] V[2] V[3] V[4] V[5] V[6]

9 Rezultat na posljednjem je mjestu najviša osoba V[1] V[2] V[3] V[4]

10 Kod n:=6; for rb:=1 to 5 do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

11 Drugo ponavljanje postupak ponavljamo na rasponu od prve do pete osobe

12 Kod n:=6; for rb:=1 to 4 do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

13 Treće ponavljanje postupak ponavljamo na rasponu od prve do četvrte osobe V[1] V[2] V[3] V[4] V[5] V[6]

14 Kod n:=6; for rb:=1 to 3 do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

15 Četvrto ponavljanje postupak ponavljamo na rasponu od prve do treće osobe V[1] V[2] V[3] V[4] V[5] V[6]

16 Kod n:=6; for rb:=1 to 2 do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

17 Peto ponavljanje uspoređujemo prvu i drugu osobu V[1] V[2] V[3] V[4]

18 Kod n:=6; for rb:=1 to 1 do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

19 Rezultat osobe su poredane po veličini V[1] V[2] V[3] V[4] V[5] V[6]

20 KOd očito je da se isti postupak ponavlja n-1 puta
možemo uvesti vanjsku petlju

21 Kod for br_pon:=1 to n-1 do begin for rb:=1 to n-br_pon do
if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; end;

22 Možemo li poboljšati algoritam?
u našem primjeru nakon trećeg ponavljanja niz je bio uređen očito je da vanjska petlja ne treba biti petlja s unaprijed zadanim brojem ponavljanja već treba biti petlja s uvjetom uvodimo logičku varijablu koja prati uređenost parova

23 Kod br_pon:=1; repeat until sortirano; sortirano:=true;
for rb:=1 to n-br_pon do begin if v[rb]>v[rb+1] then begin t:=v[rb]; v[rb]:=v[rb+1]; v[rb+1]:=t; sortirano:=false; end; br_pon:=br_pon+1; until sortirano;

24 Zadatak Imena učenika u razredu treba učitati u memoriju i sortirati po abecedi.


Download ppt "- metodom zamjene susjednih elemenata niza"

Similar presentations


Ads by Google