Sortarea algoritmilor așa cum sunt

Sortarea este dispunerea obiectelor într-o anumită ordine, de exemplu, în ordine descrescătoare sau în ordine ascendentă. În general, ordonarea elementelor este cea mai comună manipulare cu date, ceea ce face mai ușoară găsirea informațiilor corecte în viitor. Acest lucru se aplică în mare parte sistemelor de gestionare a bazelor de date diferite. Algoritmii de sortare există în prezent în număr mare, deși au caracteristici similare (pași): compararea și permutarea elementelor în perechi până la ordonarea secvenței.







Sortarea algoritmilor așa cum sunt

Algoritmii de sortare pot fi clasificați în interiorul și exteriorul. Primele sunt caracterizate de faptul că toate elementele sortate sunt plasate în memoria RAM și este posibil să se obțină accesul aleator la oricare dintre ele. Acesta din urmă poate funcționa cu datele aflate în memoria externă (în fișiere). Accesul la astfel de elemente poate fi implementat secvențial.

Este mai convenabil să sortați elementele atunci când acestea sunt în structura unei matrice unidimensionale. Fiecare astfel de element are un număr de serie, iar elementul matrice este accesat prin index. Algoritmii de sortare, în acest caz, se dovedesc a fi cele mai simple și mai ușor de înțeles pentru utilizare.

Considerăm un algoritm intern de sortare descendentă prin metoda cu bule și versiunea sa îmbunătățită, care diferă în timpul petrecut pentru sortare. Sortarea după metoda bubble are de fapt multe nume. Se mai numește și metoda de sortare liniară sau metoda de sortare prin schimb. Dar, totuși, nu este un nume. De ce o bule? Odată ajuns în apă, bule de aer va pluti în sus, deoarece este mai ușor. De exemplu, atunci când sortați în ordine ascendentă, cel mai mic element va apărea în partea superioară.







Să considerăm prima variantă a algoritmului de sortare a matricei printr-o metodă cu bule. Algoritmul verbal pentru sortarea unei matrice care are identificatorul mas și constă din elemente N arată astfel:

1. Plasați cel mai mare element al matricei în locul primului element (mas [1]). Pentru aceasta vom compara la rândul său cu toate elementele rămase (mas [2], mas [3] ... mas [N]). Dacă se dovedește că oricare dintre elementele rămase este mai mare decât mas [1], atunci este necesar să le schimbați (prin variabila buf suplimentară).

2. După excluderea elementului mas [1] din considerare, repetați paragraful 1 pentru elementul mas [2].

3. Aceste acțiuni trebuie repetate pentru toate elementele, cu excepția ultimului.

Implementarea algoritmului de sortare a bulei în Pascal:

Sortarea algoritmilor așa cum sunt

Despre a doua opțiune (o metodă îmbunătățită cu bule), putem spune că acesta este un algoritm de sortare rapidă. Deci, dacă încercați să o utilizați pentru a sorta o matrice deja sortată, algoritmul își va termina lucrarea după prima trecere prin elementele matricei. Deci, nu vom cheltui resursele de calcul ale sistemului și timpul pentru o comparație lipsită de sens a elementelor.

Iată implementarea acestui algoritm de sortare pentru limbajul de programare Pascal:

Sortarea algoritmilor așa cum sunt

Deci, algoritmii de sortare reprezintă un mijloc de ordonare a secvențelor de date. Atunci când alegeți un anumit algoritm, trebuie să țineți cont de costurile din punct de vedere al timpului și al resurselor sistemului.

Sortarea algoritmilor așa cum sunt







Articole similare

Trimiteți-le prietenilor: