Hvordan Quicksort Fungerer

Quicksort (spesielt i stedet Quicksort) kan være litt forvirrende, så la oss gå gjennom et eksempel for å vise hvordan dette sortering algoritmen fungerer.

la oss Anta at vi er gitt følgende tabellen for å sortere:

la oss Nå velge noe som kalles en «pivot-punkt»., Målet er å omorganisere matrisen slik at alle elementer som er mindre enn pivot er til venstre, og alle elementer som er større enn pivot er til høyre. Valg av pivot punktet er vilkårlig, det kan være det første elementet i matrisen, det siste elementet i matrisen, eller enda en tilfeldig element! For vårt formål selv, la oss velge pivot punktet til å være det siste elementet i matrisen, 5.,

Etter å omorganisere array rundt pivot punkt 5, skal vi få følgende utvalg:

Vi så undermapper følg prosedyren ovenfor for subarrays til venstre og til høyre for pivot punktet.

subarray til venstre på pivot point er bare ett element. Ingen vits i å sortere en array av lengde en, så det er ingenting å gjøre her!,

venstre subarray

På den annen side, den subarray til høyre for pivot punktet er ikke så trivielt. Følgende prosedyren som er beskrevet ovenfor, la oss velge 7 for å være den nye dreiepunkt for denne subarray.,»>

høyre subarray

Etter å omorganisere elementer av subarray rundt pivot punktet, får vi følgende:

høyre subarray omorganisert rundt den nye pivot point, 7

Ved å fortsette med undermapper, og sammenslåing venstre subarray med pivot og høyre subarray, et sortert array er returnert.,

The final sorted array: Quicksort(left subarray) + pivot + Quicksort(right subarray)

Articles

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *