materijali za učenike gimnazije u Vrbasu

Svakodnevno se srećemo sa velikim količinama podataka koje je potrebno urediti po određenom redosledu radi pretrage i jednostavnijeg pronalaženja određenog podatka. Zamislite samo svoj imenik u telefonu bez abecednog redosleda… Možete li da zamislite? 🙂

Algoritam sortiranja je proces preuređivanja elemanata nekog skupa po određenom poretku. Najčešće se koriste numerički i leksikografski poredak. Sortiranje skupa podataka je preduslov za njegovo je efikasno pretraživanje.

Ako pogledamo niz brojeva 2, 4, 1, 7, 9, 5 – možemo primetiti da nije uređen odnosno sortiran.
Primenom nekog od algoritama sortiranja ovaj niz postaje uređen / sortiran u rastući ili opadajući redosled.

  • Primer rastućeg redosleda: 1, 2, 4, 5, 7, 9 (gde je svaki element veći ili jednak prethodnom)
  • Primer opadajućeg redosleda: 9, 7, 5, 4, 2, 1 (gde je svaki element manji ili jednak prethodnom)

Na isti način se sortiraju leksikografski / tekstualni podaci (gde je a<b<c<d…).
Sortiranje je takođe vrlo korisno pri utvrđivanju jednakosti dva skupa podataka. Izlazni skup podataka, tj. rezultat sortiranja predstavlja permutaciju ulaznog skupa i da je svaki element izlaznog skupa manji ili jednak prethodnom elementu po odabranom poretku.

Razlikujemo dve grupe algoritama sortiranja:

  1. Algoritmi sortiranja poređenjem i
  2. Algoritmi sortiranja bez poređenja.

Poštoji mnoštvo algoritama sortiranja, razlikuju se po načinu funkcionisanja, efikasnosti, nameni…

Neki od njih su:

Algoritmi sortiranja poređenjem

Algoritmi zamene

  1. Bubble sort
  2. Quick sort

Algoritmi umetanja

  1. Insertion sort
  2. Shell sort

Algoritmi izbora

  1. Selection sort
  2. Merge sort
  3. Heapsort

Najznačajniji algoritmi sortiranja bez poređenja su:

  1. Bucket sort
  2. Counting sort
  3. Radix sort

Teorijske osnove ovih algoritama ću u ovom članku preskočiti ali imate zadatak da otkrijete funcionisanje različitih algoritama. Demonstriraćemo na časovima a u međuvremenu možete da učite na zabavniji način…

Bubble sort

Ouick sort

Insertion sort

Selection sort

Merge sort

Pokušajte da pronađete i ostale algoritme sortiranja. Na YouTube-u postoji veliki broj video klipova koji na jednostavan i zabavan način prikazuju različite algoritme. Takođe istražite komparaciju različitih algoritama…

Pogledajte zanimljiv rad učenika koji „uživo“ demonstriraju algoritme sortiranja na sledećem linku: Algoritmi sortiranja

Pred kraj – pogledajte „bitke“:

Quick Sort vs Bubble Sort    

 Merge Sort vs Quick Sort 

 Heap Sort vs Merge Sort

Pripremite se, dobro proučite klipove i napravite beleške. Nadam se da ćete se zabaviti istražujući ovu interesantnu temu a možda i neko od vas bude kreator neke nove, brže metode sortiranja 🙂

 

Ostavite odgovor

Popunite detalje ispod ili pritisnite na ikonicu da biste se prijavili:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se /  Promeni )

Google photo

Komentarišet koristeći svoj Google nalog. Odjavite se /  Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se /  Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se /  Promeni )

Povezivanje sa %s

Oblak oznaka

%d bloggers like this: