Bøttesortering er egnet på datasett der et begrenset antall verdier går igjen. Algoritmen begynner med å opprette "bøtter" for hver verdi, den går så gjennom datasettet og fordeler verdiene den finner i de ulike "bøttene". Den kan så eventuelt gå over alle bøttene og sortere innenfor hver enkelt bøtte. Til slutt setter den sammen datasettet igjen ved å gå systematisk gjennom bøttene. En variant av bøttesortering er å ta ut i bøttene, sette tilbake og så bruke innstikksortering til å få datasettet helt ordnet. I beste fall kan bøttesortering gi lineær tidsbruk – O(), noe som er bedre enn den teoretiske grensen for alle sammenligningsbaserte sorteringsalgoritmer. I verste fall kan imidlertid tidsbruken være kvadratisk, O().