/ / Šķirošanas algoritmi, kā tādi ir

Šķirot algoritmus, kā tādi ir

Šķirošana ir kārtībaobjektus noteiktā secībā, piemēram, dilstošā secībā vai augošā secībā. Kopumā pasūtīšanas elementi - visbiežāk datu manipulācijas, lai veicinātu turpmāku meklēšanu nepieciešamo informāciju. Tas lielā mērā attiecas uz dažādām datu bāzu pārvaldības sistēmām. Šķirošanas algoritmu pastāv liels skaits šajā brīdī, pat ja tie ir līdzīgas iezīmes (piestātnes): salīdzināt un permutation elementiem pāriem, kamēr secība netiks pasūtīt.

masīvu šķirošanas algoritms

Šķirošanas algoritmus var klasificētiekšējais un ārējais. Pirmie ir raksturojami ar to, ka visi šķirotie elementi tiek ievietoti RAM, un ir iespējams iegūt jebkuru no tiem brīvprātīgu piekļuvi. Pēdējais var strādāt ar datiem, kas atrodas ārējā atmiņā (failos). Pieeju šādiem elementiem var īstenot secīgi.

Ir ērtāk kārtot vienumus, kad tie irvienmodu masīvu struktūrā. Katram šādam elementam ir sērijas numurs, un masīva elementam ir pieejams indekss. Šajā gadījumā šķirošanas algoritmi izrādās visvieglāk un saprotamāk.

Apsveriet iekšējo šķirošanas algoritmupazeminoties ar burbuļu metodi un tā uzlaboto versiju, kas atšķiras laika šķirošanai pavadītajā laikā. Šķirošanai ar burbuļu metodi ir daudz vārdu. To sauc arī par lineāro šķirošanas metodi vai maiņas šķirošanas metodi pēc izvēles. Bet tomēr tas nav vārds. Kāpēc burbulis? Kad tas ir ūdenī, gaisa burbulis peld, jo tas ir vieglāk. Tātad, piemēram, sakārtojot augošā secībā, augšdaļā parādās mazākais no elementiem.

šķirošanas algoritmi

Apskatīsim masīva šķirošanas algoritma pirmo variantu, izmantojot burbuļu metodi. Verbālais algoritms šķirošanai masīvā, kuram ir identifikators mas un sastāv no N elementiem, izskatās šādi:

1 Novietojiet lielāko masīva elementu pirmā elementa vietā (mas [1]). Par to mēs savukārt salīdzināsim ar visiem pārējiem elementiem (mas [2], mas [3] ... mas [N]). Ja izrādās, ka kāds no atlikušajiem elementiem ir lielāks par mas [1], tad tiem ir jāmaina (izmantojot papildu mainīgo buf).

2. Pēc elementa mas [1] izslēgšanas no atlīdzības atkārtojiet 1. punktu elementam mas [2].

3. Šīs darbības jāatkārto visiem elementiem, izņemot pēdējo.

Burbulu šķirošanas algoritma ieviešana Pascal:

masīvu šķirošanas algoritms

Par otro variantu (uzlabota metodeburbulis), mēs varam teikt, ka tas ir ātrs algoritms. Tātad, ja jūs mēģināt to izmantot, lai kārtotu masīvs jau ir sakārtots, algoritms beidz darbu pēc pirmā loka masīva elementiem. Tātad, mēs neiztērēsim sistēmas skaitļošanas resursus un laiku elementu bezjēdzīgam salīdzinājumam.

Šeit ir šīs šķirošanas algoritma īstenošana Pascal programmēšanas valodā:

ātrs šķirošanas algoritms

Tātad, šķirošanas algoritmi ir datu secību pasūtīšanas līdzeklis. Izvēloties noteiktu algoritmu, jāņem vērā izmaksas, kas saistītas ar sistēmas laiku un resursiem.

Lasīt vairāk: