Sammensætningssort: En beskrivelse af algoritmens funktion og forskelle fra andre typer af ordreafgivelse

computere

Ved udvikling af forskellige programmeraltid programmører nødt til at ty til sortering for at optimere ydeevne algoritmer til at forbedre effektiviteten af ​​eftersøgninger mv I dag er der mange forskellige layout teknikker elementer i rækkefølge: .... mergesort, med en nøgle, osv Sortering er en kompleks operation, resultatet af, som fører til bestilling de samme objekter i stigende eller faldende rækkefølge - alt efter kravene til en bestemt opgave.

Alle slags sorteringsalgoritmer kan væreOpdel i to kategorier: arrangere arrayer og arrangere filer i en bestemt rækkefølge. Den første type objekter kan placeres ikke kun i RAM, men også på nogle medier, forudsat at adgangen til den er åben direkte. Den anden kategori af genstande skal være på et håndgribeligt medium: en disk eller et magnetbånd.

Nøgleforskellen mellem bestilling af varerarray og arrangementet af filer i den angivne rækkefølge er, at alle medlemmer af arrayet er tilgængelige til enhver tid, når de får adgang til dem, og derfor starter sorteringsprocessen umiddelbart efter procedurens start uden at stoppe på grund af manglende tilgængelighed af et element. Samtidig kan der kun gives adgang til et begrænset antal medlemmer ved bestilling af filer på et bestemt tidspunkt.

Det er ofte nok at organisere filerder anvendes en fusionssort, som er udviklet på de grundlæggende principper for arrangement af elementer i en bestemt rækkefølge. Generelt kan sorteringsproceduren beskrives som følger: Et bestemt datasegment er allokeret og anvendt som en nøgle. Som et eksempel kan du overveje et eksempel på sortering af postemner på det angivne indeks. Som følge heraf udfører algoritmen ikke en fuldstændig analyse af oplysningerne, men sorterer samtidig de nødvendige elementer med høj sandsynlighed.

Hovedforskellen mellem sekventielle filer frafiler med direkte adgang er at de kan placeres på medier, som det er svært at organisere permanent direkte adgang. Desuden bruger sådanne filer normalt ikke en fast længde for lagrede poster. På grund af disse funktioner anvendes sekventielle filer kun i to situationer:

- hvis det er nødvendigt at bruge en databærer orienteret til sekventiel adgang

- når det er praktisk at bruge den variable længde af poster.

Sortering ved sammenfletning bruges oftei moderne software. Dette skyldes den udbredt distribution af sekventielle filer. For eksempel er næsten alle tekstfiler i træk. På trods af det praktiske at overveje en sekventielt organiseret fil som en matrix af data, er en sådan tilgang umulig, fordi alle elementer i filen ikke er tilgængelige fysisk eller fysisk.

Sortering af fusionen er faktisk blevet den enestemåde at sortere de sekventielle filer. På trods af at der i dag er andre metoder til sekventering af sekventielle filer, er denne metode stadig en af ​​de mest populære. Sortering af en naturlig fusion indebærer at dele filen i to dele, lige i volumen til oplysningerne. Yderligere fra hver fil er der en gradvis læsning af hvert element fra dem der er tilgængelige i øjeblikket. Bestilte elementer er arrangeret i den krævede rækkefølge i den tredje fil, som yderligere er opdelt i to tilsvarende størrelser. Sådan foretages fusionssortimentet. Pascal, C, Basic - mest kendte programmeringssprog understøtter implementeringen af ​​denne type sekventering af sekventielle filer.