si tenemos una lista de números necesitamos registrar n bitsnlogn
No: si tenemos una lista de números entre y 2 k - 1 , necesitamos k bits. No hay relación entre k y log n en general.02k−1kklogn
Si todos los números son distintos, entonces , y la clasificación por radix en números distintos tiene una complejidad temporal de Ω ( n log n ) . En general, la complejidad de la clasificación de radix es Θ ( nlogn≥kΩ(nlogn) donde n es el número de elementos para ordenar yk es el número de bits en cada elemento.Θ(nk)nk
Decir que la complejidad de la clasificación de radix es significa tomar un tamaño de bit fijo para los números. Esto implica que para n suficientemente grande , habrá muchos valores duplicados.O(n)n
Existe un teorema general de que un método de ordenación de matriz o lista que funciona comparando dos elementos a la vez no puede ejecutarse más rápido que en el peor de los casos. La clasificación por radix no funciona comparando elementos, pero funciona el mismo método de prueba. La clasificación por radix es un proceso de decisión para determinar qué permutación se aplicará a la matriz; hay n ! permutaciones de la matriz, y la ordenación por radix toma decisiones binarias, es decir, decide si intercambia dos elementos o no en cada etapa. Después de m decisiones binarias, la clasificación de radix puede decidir entre 2 m de permutaciones. Para llegar a la n ! posibles permutaciones, es necesario queΘ(nlogn)n!m2mn! .m≥log(n!)=Θ(nlogn)
Una suposición en la prueba de que no escribí anteriormente es que el algoritmo debe funcionar en el caso cuando los elementos son distintos. Si se sabe a priori que los elementos no son todos distintos, entonces el número de permutaciones potenciales es menor que la completa . . Al ordenar números de k bits, solo es posible tener n elementos distintos cuando n ≤ 2 k ; en ese caso, la complejidad de la clasificación de radix es de hecho Ω ( n log n ) . Para valores mayores de n , debe haber colisiones, lo que explica cómo la ordenación de radix puede tener una complejidad menor que Θ (n!knn≤2kΩ(nlogn)n cuando n > 2 k .Θ(nlogn)n>2k