Bubblesorte vs utvalgssortering
Boble sortering er en sorteringsalgoritme som opererer ved å gå gjennom listen som skal sorteres gjentatte ganger, mens man sammenligner par av elementer som er tilstøtende. Hvis et par elementer er i feil rekkefølge, byttes de for å plassere dem i riktig rekkefølge. Denne tverrsnittet gjentas til det ikke kreves ytterligere bytteavtaler. Valg sortering er også en sorteringsalgoritme, som begynner med å finne minimumselementet i listen og bytte det med det første elementet. Denne prosessen gjentas for resten av listen ved å plassere bytteelementer i rekkefølge.
Hva er Bubble Sort?
Boble sortering er en sorteringsalgoritme som opererer ved å gå gjennom listen som skal sorteres gjentatte ganger, mens man sammenligner par av elementer som er tilstøtende. Hvis et par elementer er i feil rekkefølge, byttes de for å plassere dem i riktig rekkefølge. Denne tverrsnittet gjentas til det ikke kreves ytterligere bytteavtaler (hvilket betyr at listen er sortert). Siden de minste elementene i listen kommer til toppen når en boble kommer til overflaten, er det gitt navnet boble sortering. Bubblesort er en veldig enkel sorteringsalgoritme, men den har en gjennomsnittlig sakkompleksitet på O (n2) når du sorterer en liste med n elementer. På grunn av dette er boble sorter ikke egnet for sortering av lister med et stort antall elementer. Men på grunn av sin enkelhet læres boblesorte under introduksjoner til algoritmer.
Hva er utvalgssortering?
Valg sortering er også en annen sorteringsalgoritme som starter ved å finne minimumselementet i listen og bytte det med det første elementet. Deretter finner minimumselementet fra resten av listen (fra det andre elementet til det siste elementet i listen) og byttes med det andre elementet. Denne prosessen gjentas for resten av listen ved å plassere bytteelementer i rekkefølge. Så i utvalgssort, i hvert trinn i algoritmen, er listen delt inn i to deler hvor en del inneholder sorterte elementer og den andre delen inneholder usorterte elementer. Etter hvert som algoritmen fortsetter, vokser den sorterte listen fra venstre til høyre. Valg sorter har også en gjennomsnittlig sak tid kompleksitet av O (n2). Derfor er det heller ikke egnet for sortering av store lister.
Hva er forskjellen mellom sortering og sortering av bobler?
Selv om både boble sorterings- og utvalgsortalgoritmer har gjennomsnittlig tilfelle tidskompleksiteter av O (n2), er boblesort nesten helt overgått av utvalgssorten. Dette skyldes antall swaps som trengs av de to algoritmene (boble sorter trenger flere swaps). Men på grunn av enkelhet av boble sorter, er koden størrelse veldig liten. Stabilitet er en annen forskjell i disse to algoritmer. En stabil sorteringsalgoritme, er en sorteringsalgoritme som beholder rekkefølge av poster hvis listen inneholder elementer med likeverdig verdi. I den forstand er utvalgssort ikke en stabil algoritme mens boblesort er en stabil algoritme.