[−][src]Function voracious_radix_sort::voracious_sort
pub fn voracious_sort<T, K>(arr: &mut [T], radix: usize) where
T: Radixable<K>,
K: RadixKey,
Voracious sort
It is an improvement of the Ska sort algorithm.
Insertion sort has been replaced by the PDQ sort as a fallback for very small input.
We added a second fallback for array smaller or equal to 30_000 elements. For this purpose, we implemented the MSD sort which is the fastest algorithm from this crate for "small" input.
Other heuristics have been added.
The Verge sort pre-processing heuristic is also added.
The Voracious sort is an in place unstable radix sort. For array smaller than 30_000 elements it fallbacks to MSD sort which is out of place, but since the threshold is a constant, this algorithm is in place.