Hvad er en boble sortering?
En boble sortering eller synkende sortering er en algoritme, der sorterer lister i rækkefølge ved at arbejde inden for listen for at bytte og sammenligne emner. Processen kan finde sted flere gange, før en liste er i korrekt orden. Sorten får sit navn fra de små elementer, der kontinuerligt stiger til toppen af listen som bobler i en drink. Det bruges oftest til at bringe orden til små lister.
Boblesorteren fungerer metodisk, startende fra toppen af listen. Det starter med at sammenligne det første element med det andet og skifte dem om nødvendigt. Derefter fortsætter den nede på listen og foretager en swap igen, når den finder noget ude af drift. Hver gang algoritmen foretager en swap, startes processen fra enten toppen eller bunden af listen.
Boblesorter er fra sammenligningsgruppen af sorteringsalgoritmer. Denne type algoritme fungerer to elementer ad gangen og bestemmer par-for-par-basis hvilken af to værdier der er højere, eller hvis de er ens. Denne slags sortering kan give et begrænset overblik over et datasæt, men det kan også gøre det lettere at finjustere elementer i dette sæt. Andre algoritmetyper i sammenligningsgruppen inkluderer hurtig, flet, cocktail og cyklus.
En anden simpel sammenligningssorteringsalgoritme kaldet insertion point antages at fungere mere effektivt, mens den bygger på et lignende simpelt koncept. I stedet for elementerne, der er omordnet fra toppen, indsættes de i korrekt rækkefølge i forhold til hinanden, indtil hele sættet er korrekt ordnet. I mange tilfælde er denne slags kommet til at erstatte boblesorten i både uddannelsesplaner og almindelig brug.
Selvom algoritmen til boble-sortering er let at bruge og forstå, har den en tendens til at være praktisk kun for små lister. Hastigheden og effektiviteten falder med en stigning i antallet af varer på listen. Mange programmerere synes også at det er vanskeligt at bruge denne relativt gamle metode til nyere computersystemer, da den blev oprettet, før disse mere effektive maskiner eksisterede.
Der er nogle metoder, der kan bruges til at øge boblens sorteringseffektivitet. Den mest effektive ser ud til at være en metode, hvor algoritmen fungerer mere problemfrit, hvis de største elementer på listen er placeret tidligt i processen. Ved at have denne base på plads kan det tage meget færre pas for at afslutte bestilling af resten af listen. Denne ordremetode kan skrives til algoritmekoden.