/ / Razvrstavanje algoritama kakvi jesu

Razvrstavanje algoritama kakvi jesu

Razvrstavanje je rasporedobjekata u određenom poretku, primjerice, silaznim redoslijedom ili uzlaznim redoslijedom. Općenito, naručivanje elemenata je najčešća manipulacija podacima, što olakšava pronalaženje pravih informacija u budućnosti. To se uglavnom odnosi na različite sustave upravljanja bazom podataka. Razvrstavanje algoritama trenutno postoji u velikom broju, iako imaju slične značajke (koraci): usporedba i permutacija elemenata u parovima sve dok se naredba ne naredi.

algoritam razvrstavanja polja

Razvrstavanje algoritama može se svrstati uunutarnje i vanjske. Prvi se odlikuje činjenicom da su svi sortirani elementi smješteni u RAM i moguće je dobiti slučajni pristup bilo kojem od njih. Potonji mogu raditi s podacima koji se nalaze u vanjskoj memoriji (u datotekama). Pristup takvim elementima može se provoditi sekvencijalno.

Povoljnije je sortirati stavke kada suu strukturi jednodimenzionalnog polja. Svaki takav element ima serijski broj, a elementu polja pristupa se indeksu. Algoritmi sortiranja u ovom slučaju postaju najjednostavniji i razumljivi za upotrebu.

Razmislite o unutarnjem algoritmu sortiranja zaspuštajući se metodom mjehurića i njegovom poboljšanom verzijom, razlikujući se u vremenu provedenom za sortiranje. Razvrstavanje metodom mjehurića zapravo ima mnoga imena. Također se naziva metodom linearnog sortiranja ili metodom razmjene sortiranja po izboru. Ali, međutim, to nije naziv. Zašto mjehurić? Jednom u vodi, mjehurić zraka će plutati, jer je lakše. Tako, na primjer, prilikom razvrstavanja po uzlaznom poretku, najmanji element će se pojaviti na vrhu.

razvrstavanje algoritama

Razmotrimo prvu varijantu algoritma razvrstavanja polja metodom mjehurića. Verbalni algoritam za sortiranje polja koji ima identifikator mas i sastoji se od N elemenata izgleda ovako:

1. Postavite najveći element polja umjesto prvog elementa (mas [1]). Zbog toga ćemo ga usporediti sa svim preostalim elementima (mas [2], mas [3] ... mas [N]). Ako se ispostavi da je bilo koji od preostalih elemenata veći od mas [1], tada je potrebno zamijeniti ih (preko dodatne varijable buf).

2. Nakon što isključimo element mas [1] iz razmatranja, ponovite stavak 1 za element mas [2].

3. Te radnje treba ponoviti za sve elemente osim posljednjeg.

Provedba algoritma razvrstavanja mjehurića u Pascal:

algoritam razvrstavanja polja

O drugoj opciji (poboljšana metodamjehurić) možemo reći da je riječ o algoritmu brzog sortiranja. Dakle, ako ga pokušate upotrijebiti za sortiranje već raspoređenog polja, algoritam će završiti svoj rad nakon prvog prolaska kroz elemente polja. Dakle, nećemo potrošiti računalne resurse sustava i vrijeme za besmislenu usporedbu elemenata.

Evo provedbe ovog algoritma razvrstavanja za programski jezik Pascal:

brzog sortiranja algoritma

Dakle, razvrstavanje algoritama sredstvo je naručivanja sljedova podataka. Pri odabiru određenog algoritma trebate uzeti u obzir troškove u smislu vremena i resursa sustava.

Pročitajte više: