Sortering er et arrangementobjekter i en bestemt rækkefølge, for eksempel faldende eller stigende. Generelt er bestilling af elementer den mest almindelige datamanipulation, hvilket letter den videre søgning efter de nødvendige oplysninger. Dette gælder stort set for forskellige databasestyringssystemer. Sorteringsalgoritmer eksisterer i øjeblikket i stort antal, selv om de har lignende funktioner (trin): Sammenligning og omarrangering af elementer i par, indtil sekvensen bliver bestilt.
Sorteringsalgoritmer kan klassificeres afinternt og eksternt. De første er kendetegnet ved, at alle de sorterede elementer placeres i RAM, og det er muligt at få tilfældig adgang til nogen af dem. Den anden kan arbejde med data i ekstern hukommelse (i filer). Adgang til sådanne elementer kan implementeres sekventielt.
Det er mere bekvemt at sortere varer, når de eri strukturen af et endimensionelt array. Hvert sådant element har et sekvensnummer, og en appel til et element i arrayet sker ved hjælp af indeks. I dette tilfælde er sorteringsalgoritmerne det nemmeste og mest forståelige at bruge.
Overvej en intern sorteringsalgoritme affaldende med boblen metode og dens forbedrede version, som afviger af den tid, der bruges til sortering. Bubblesortering har faktisk mange navne. Det kaldes også den lineære sorteringsmetode eller den valgte sorteringsmetode. Men forresten handler det ikke om titlen. Hvorfor boble? En gang i vandet kommer en luftboble op, da den er lettere. Når du f.eks. Sorterer i stigende rækkefølge, vil den mindste af elementer være øverst.
Overvej den første version af algoritmen til sortering af et array ved hjælp af boblemetoden. Den verbale algoritme til sortering af en matrix med mas-identifikator og bestående af N-elementer er som følger:
1.Sæt i stedet for det første element (mas [1]) det største element i arrayet. For at gøre dette vil vi sammenligne det igen med alle de resterende elementer (mas [2], mas [3] ... mas [N]). Hvis det viser sig, at et af de resterende elementer er større end mas [1], skal du bytte dem (via den ekstra variabel buf).
2. Eliminere fra betragtning elementet mas [1], gentag klausul 1 for element mas [2].
3. Disse handlinger gentages for alle elementer undtagen det sidste.
Implementeringen af boblesorteringsalgoritmen i Pascals programmeringssprog:
Om den anden mulighed (forbedret metodeboble) kan siges at dette er en hurtig sorteringsalgoritme. Så hvis du forsøger at bruge den til at sortere et allerede sorteret array, vil algoritmen afslutte sit arbejde efter den første passage gennem elementerne i arrayet. Det betyder, at vi ikke vil spilde systemets beregningsressourcer og tid på en meningsløs sammenligning af elementer.
Her er implementeringen af denne sorteringsalgoritme til Pascals programmeringssprog:
Så sorteringsalgoritmer er et middel til at bestille datasekvenser. Når du vælger en bestemt algoritme, bør du overveje omkostningerne i form af tid og systemressourcer.