Kako Sortirati Niz U Rastućem Redoslijedu

Sadržaj:

Kako Sortirati Niz U Rastućem Redoslijedu
Kako Sortirati Niz U Rastućem Redoslijedu

Video: Kako Sortirati Niz U Rastućem Redoslijedu

Video: Kako Sortirati Niz U Rastućem Redoslijedu
Video: C# Programiranje Tutorijal-Nizovi-Z10-Sortirati niz u rastući redosled-Selection sort 2024, Svibanj
Anonim

Obrada podataka u polju izvodi se sekvencijalnim nabrajanjem, usporedbom i pretraživanjem vjerojatnih vrijednosti. Istodobno, velika dimenzija niza značajno povećava troškove resursa. Vrijeme algoritma da uzastopno prolazi kroz sve elemente niza može se značajno smanjiti ako su unaprijed naručeni. Nizovi se obično sortiraju u rastućem redoslijedu, počevši od najmanjeg broja ili znaka. Algoritme za sortiranje treba odabrati prema uvjetima određenog zadatka.

Kako sortirati niz u rastućem redoslijedu
Kako sortirati niz u rastućem redoslijedu

Upute

Korak 1

Postoji nekoliko načina za sortiranje niza. Najjednostavnije za algoritmiranje je razvrstavanje po mjehurićima, ali je i jedno od najsporijih. Bit ove metode je sekvencijalno prelazak polja podataka i usporedba svakog para elemenata. Ako je dijete manje od prethodnog, mjesta se zamjenjuju. Tada algoritam kreće ispočetka. Uzorak C koda za sortiranje:

int masa [10];

int el_min = 10;

za (int i = 0; ii; j--)

if (gubitak (mase [j], mase [j-1]))

swat (mass [j], mass [j-1]);

}

Korak 2

Jedan od optimalnih algoritama za sortiranje niza u rastućem redoslijedu smatra se metodom umetanja. Bit algoritma je oblikovanje zadanog niza među skupinom elemenata (u rastućem redoslijedu). Posebni rukovatelj u petlji provjerava redoslijed niza. Za sortiranje u rastućem redoslijedu naveden je sljedeći uvjet. Ako je sljedeći element manji od prethodnog, uklanja se sa svog mjesta i postavlja na onaj koji odgovara njegovoj vrijednosti. Primjer koda za uzlazni program sortiranja u C:

int Kol = 40;

int masa [Kol], k;

za (int i = 1, j = 0; i <Kol; i ++)

{

k = masa ; // pomoćna varijabla za spremanje elementa niza

j = i - 1;

dok (k <masa [j])

{

masa [j + 1] = masa [j];

j--;

ako je (j <0) prekid;

masa [j + 1] = k;

}

}

3. korak

Sljedeća uobičajena metoda sortiranja je algoritam poredavanja pronalaženjem minimalnog ili maksimalnog elementa u nizu. Prilikom sortiranja u rastućem redoslijedu, u trenutku prvog prolaska kroz niz, pronalazi se njegov element s najmanjom vrijednošću koji se postavlja na početak niza. Na njegovo mjesto postavlja se element koji je prethodno zauzimao prvo mjesto. Daljnjim razmatranjem niza, ispunjeni prostor se isključuje. Traži se sljedeći najmanji element, smjesti se na drugo mjesto i tako dalje, sve dok se cijeli niz ne sortira. Poredaj kod prema metodi pronalaženja minimalnog elementa popisa:

int mass [30], bb;

int Kol = 30, min, ps;

za (int i = 0; i <Kol -1; i ++)

{

min = masa ;

pos = i;

za (int j = 0; j <Kol; j ++)

{

ako (masa [j] <min)

{

min = masa [j];

pos = j;

}

bb = masa ;

masa = masa [post];

mas [post] = bb;

}

}

Preporučeni: