Burstsort

Burstsort
Class Sorting algorithm
Data structure Array
Worst case performance O(n\log(n))

Burstsort and its variants are cache-efficient algorithms for sorting strings and are faster than quicksort for large data sets.

Burstsort algorithms use a trie to store prefixes of strings, with growable arrays of pointers as end nodes containing sorted, unique, suffixes (referred to as buckets). Some variants copy the string tails into the buckets. As the buckets grow beyond a predetermined threshold, the buckets are "burst", giving the sort its name. A more recent variant uses a bucket index with smaller sub-buckets to reduce memory usage. Most implementations delegate to multikey quicksort, an extension of three-way radix quicksort, to sort the contents of the buckets. By dividing the input into buckets with common prefixes, the sorting can be done in a cache-efficient manner.

References

↑Jump back a section

Read in another language

This page is available in 1 language

Last modified on 17 March 2013, at 02:22