1. Napisati funkcije za sortiranje niza celih brojeva za sve algoritme za sortiranje: bubble sort, selection sort, insertion sort, shell sort, merge sort i quick sort. 2. Napisati program za sortiranje niza niski (maksimalne duzine 50) koje se ucitavaju iz datoteke (broj reci u datoteci nije unapred poznat) pomocu quick sort-a. 3. Napisati program za sortiranje niza struktura studenata koji se ucitavaju iz datoteke (broj studenata u datoteci nije unapred poznat). Za svakog studenta je zadato ime, prezime (karakterske niske duzine maksimalno 20), prosecna ocena i broj indeksa (zapisan u formatu koji se koristi na Matematickom fakultetu, npr mi11045). (a) sortirati dobijeni niz merge sort-om prema prosecnoj oceni (b) sortirati dobijeni niz insertion sort-om po broju indeksa (prvo po godini u kojoj je student upisao, pa po smeru pa po broju indeksa) (c) sortirati dobijeni niz bubble sort-om po imenima studenata leksikografski (prvo po prezimenima, pa za studente koji imaju isto prezime sortirati ih po imenima) 4. Uraditi prethodni zadatak koriscenjem ugradjene funkcije qsort. 5. U datoteci su date reci (ciji broj nije unapred poznat). Pronaci sve reci u toj datoteci koje su anagrami (sastoje se od istih slova). Zadatak resiti sortiranjem. Dozvoljeno je koriscenje ugradjene funkcije qsort.