L'ordinamento Radix è teoricamente molto veloce quando sai che le chiavi si trovano in un certo intervallo limitato, ad esempio valori nell'intervallo . Se converti semplicemente i valori in base che richiede tempo , esegui un ordinamento base radix e poi converti nuovamente nella base originale per un algoritmo globale .[ 0 … n k - 1 ] k < lg n n Θ ( n ) n Θ ( n k )
Tuttavia, ho letto che in pratica l'ordinamento radix è in genere molto più lento rispetto a fare ad esempio un quicksort randomizzato :
Per array di grandi dimensioni, l'ordinamento radix ha il conteggio di istruzioni più basso, ma a causa delle prestazioni della cache relativamente scarse, le prestazioni complessive sono peggiori rispetto alle versioni ottimizzate per la memoria di mergesort e quicksort.
Radix sort è solo un bel algoritmo teorico o ha usi pratici comuni?