Die Radix-Sortierung ist theoretisch sehr schnell, wenn Sie wissen, dass sich die Tasten in einem bestimmten begrenzten Bereich befinden, z. B. Werte im Bereich [ 0 … n k - 1 ] . Wenn k < lg n Sie nur die Werte zu Base umwandeln n , die nimmt Θ ( n ) Zeit, führen Sie eine Basis n Art radix und dann konvertiert für eine Gesamt zu Ihrer ursprünglichen Basis zurück Θ ( n k ) Algorithmus.
Ich habe jedoch gelesen, dass die Radix-Sortierung in der Praxis in der Regel viel langsamer ist als beispielsweise eine zufällige Quicksortierung :
Bei großen Arrays weist radix sort die niedrigste Befehlsanzahl auf. Aufgrund der relativ schlechten Cache-Leistung ist die Gesamtleistung jedoch schlechter als bei den speicheroptimierten Versionen von Mergesort und Quicksort.
Ist radix sort nur ein guter theoretischer Algorithmus oder hat er allgemeine praktische Anwendungen?