Le tri Radix est théoriquement très rapide lorsque vous savez que les clés sont dans une certaine plage limitée, disons valeurs dans la plage [ 0 … n k - 1 ] par exemple. Si k < lg n, vous venez de convertir les valeurs en base n, ce qui prend du temps Θ ( n ) , effectuez un tri radix en base n , puis convertissez-le à votre base d'origine pour un algorithme global Θ ( n k ) .
Cependant, j'ai lu que dans la pratique, le tri radix est généralement beaucoup plus lent que par exemple un tri rapide aléatoire :
Pour les baies de grande taille, le tri radix a le nombre d'instructions le plus faible, mais en raison de ses performances de cache relativement médiocres, ses performances globales sont inférieures à celles des versions optimisées en mémoire de mergesort et quicksort.
Le tri radix est-il juste un bon algorithme théorique, ou a-t-il des utilisations pratiques communes?