Skip to main content

Hva er array sortering?

Array -sortering er prosessen med å ta de individuelle elementene i en matrise og ordne dem i en eller annen type logisk rekkefølge i henhold til en serie regler definert av brukeren.Prosessen innebærer å gå gjennom matrisen, ett element om gangen, og teste det elementet mot de omkringliggende elementene for å avgjøre om det må flyttes til en annen indeks i matrisen.Når du utfører array -sortering, er det flere algoritmer som kan brukes, spesielt når sorteringsforholdene er numeriske i motsetning til noe mer vilkårlig.De fleste array-sorting-algoritmer måles med deres hastighet og effektivitet, med de tregeste algoritmene som den enkleste å programmere og den raskeste er mye mer kompleks.

Den enkleste array-sorting-algoritmen kalles en boble-sortering, og den er også den tregeste.Prosessen begynner med en sløyfe som vil gå gjennom hvert element i matrisen.Det nåværende elementet sammenlignes med neste element i matrisen, og hvis det neste elementet er lavere i verdi enn det nåværende elementet, byttes dataene på indeksene.Ulempen med en boble -sortering er at den må sløyfe gjennom matrisen flere ganger for å lage alle nødvendige bytter for å sortere matrisen.I de mest grunnleggende implementeringene vil sorteringen sløyfe gjennom hele matrisen en komplett tid for hvert element den inneholder.

Et utvalg bruker en algoritme som utfører matrise -sortering på en litt mer effektiv måte enn en boble -sortering, men som fremdeles krever flere iterasjonergjennom matrisen.Denne typen starter med å sløyfe gjennom matrisen for å finne det laveste verdsatte elementet.Dette elementet blir deretter plassert i den første indeksen for matrisen, og noen sporingsvariabler økes.Syklusen gjentar da, og ser nå etter den neste laveste verdien som deretter blir plassert i den andre indeksen for matrisen.Prosessen fortsetter til elementet med høyest verdi er plassert i den siste indeksen for matrisen.

En metode for array-sortering som kan være effektiv, men noen ganger kompleks å implementere er kjent som en kvikksort.Quicksorting innebærer å ta en verdi som er i midten av alle mulige verdier som holdes i matrisen.Algoritmen går gjennom alle elementene i matrisen og setter alle verdier større enn median tallet på slutten av matrisen, og senker verdiene i begynnelsen.Denne prosessen utføres rekursivt på blokker av matrisen til på slutten hele arrayen er sortert.Forutsatt at mellomverdien som brukes for matrisen er ganske nøyaktig, kan dette være en veldig rask måte å sortere på.

Én faktor som kan påvirke en matrise-sortingsalgoritme er midlene som dataene testes for ekvivalens.Enkle tall er enkle å sammenligne for hvilken verdi er større, men dette er kanskje ikke tilfelle for komplekse dataklasser der flere forhold må sammenlignes.Jo lenger det tar å sammenligne om ett element er større enn eller mindre enn et annet, jo lenger vil det ta for algoritmen å sortere matrisen.