Burstsort is a family of string sorting algorithms designed to make good use of the processor cache. It is a relative of radix sort, but instead of repeatedly partitioning the whole data set by character it inserts each string into a trie whose leaves are growable arrays of pointers, called buckets, that hold the remaining suffixes of strings sharing a common prefix. When a bucket grows past a set threshold it is burst into a new level of the trie, which gives the method its name, and the contents of small buckets are finally sorted with a method such as multikey quicksort. Because strings with common prefixes are kept close together in memory, the algorithm causes far fewer cache misses than comparison sorts on large collections of ordinary strings. It was first published in 2003, and its source gives a running time of O(wn) for n strings of word length w, the same asymptotic bound as radix sort, while reporting that in practice it tends to be about twice as fast on big data sets of strings.
Facts
Time Complexity
Time Complexity (category)Polynomial Time -- O(n^k) 1 Connections
Credited To
Source Burstsort (Wikipedia)
In Field
Source Burstsort (Wikipedia)
Invented
Source Burstsort (Wikipedia)
Sources
1. Burstsort (Wikipedia)
Third lead paragraph
with time complexity of O(wn)
In Group: Distribution and Integer Sorting Algorithms, Lead paragraph
They are variants of the traditional radix sort but faster for large data sets of common strings
In Field: Algorithms and Complexity Theory, Lead paragraph [in-field]
Burstsort and its variants are cache-efficient algorithms for sorting strings.
Credited To: Justin Zobel, References, first publication of 2003
Zobel, Justin (2003)
Invented: Justin Zobel, References, first publication of 2003
Zobel, Justin (2003)
View the SourceReader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.