Monografia Del Algoritmo Radyx Sort
Monografia Del Algoritmo Radyx Sort
Monografia Del Algoritmo Radyx Sort
Algoritmos y Programacion II
INGENIERO
Godofredo Poccori Umeres
TEMA DE INVESTIGACION
Algoritmo Radix Sort
ESTUDIANTES
Saavedra Quillahuaman Alexis
Salazar Llavilla Joseph
Quispe Huaman Juan Pablo
Yapura Rupaylla Joel
CUSCO – PERÚ
2024
2
Introducción
significativo hasta el más significativo. Este método, conocido como clasificación de dígitos,
es particularmente efectivo para manejar grandes volúmenes de datos de longitud fija o rango
limitado.
Historia y Origen
Radix Sort tiene sus raíces en los primeros días de la computación, mucho antes de
que existieran las computadoras electrónicas modernas. Su concepto básico se remonta a las
máquinas de clasificación de tarjetas perforadas utilizadas para el procesamiento de datos a
principios del siglo XX.
que hoy conocemos como Radix Sort. Durante la década de 1960, con el auge de las
computadoras mainframe, Radix Sort ganó popularidad debido a su eficiencia en el
ordenamiento de grandes volúmenes de datos, especialmente en aplicaciones comerciales y
gubernamentales.
Radix Sort es un algoritmo de ordenación que organiza los elementos en una lista
ordenada de manera no comparativa. A diferencia de los algoritmos de ordenación basados en
comparaciones, como Quick Sort o Merge Sort, Radix Sort clasifica los datos procesando uno
por uno los dígitos o caracteres que componen los elementos. Este enfoque lo hace
particularmente eficiente para ciertos tipos de datos, especialmente números enteros de
longitud fija o datos que pueden representarse de manera posicional.
necesarias para clasificar todos los elementos. Por ejemplo, para los números 170, 45,
75 y 802, la máxima longitud de dígitos es 3.
2. Clasificación por Dígitos Menos Significativos (LSD Radix Sort): En cada paso,
Radix Sort clasifica los números en función de un dígito específico, comenzando con
el dígito menos significativo. Para realizar esta clasificación, se puede utilizar un
algoritmo de ordenación estable como Counting Sort, que agrupa los números en
"cubetas" basadas en el valor del dígito actual.
3. Agrupación y Reordenación: Después de clasificar por el dígito actual, los números
se recogen de las cubetas en el orden correspondiente. Este proceso asegura que los
números con el mismo valor en el dígito actual se mantienen en su orden relativo
original, lo que es esencial para la estabilidad del algoritmo.
4. Repetición del Proceso: El proceso de clasificación y recolección se repite para el
siguiente dígito más significativo hasta que todos los dígitos hayan sido procesados.
Al final de estas iteraciones, los números estarán completamente ordenados.
Clasificamos los números según el valor del dígito menos significativo (dígito de las
unidades):
● 0: [120, 1005]
● 1: [1]
● 3: [3]
● 4: [44]
6
● 5: [45]
● 6: [76]
● 8: [8]
● 9: [9, 289]
Lista después del primer paso: [120, 1005, 1, 3, 44, 45, 76, 8, 9, 289]
● 0: [1, 3, 8, 9]
● 2: [120, 289]
● 4: [44, 45]
● 6: [76]
● 0: [1005] (el dígito de las decenas en 1005 es 0 porque no hay un segundo dígito
significativo)
Lista después del segundo paso: [1, 3, 8, 9, 1005, 120, 289, 44, 45, 76]
Lista después del tercer paso: [1, 3, 8, 9, 44, 45, 76, 1005, 120, 289]
Lista después del cuarto paso: [1, 3, 8, 9, 44, 45, 76, 120, 289, 1005]
7
Resultado Final
La lista final completamente ordenada es: [1, 3, 8, 9, 44, 45, 76, 120, 289, 1005].
1. Identificación del Máximo Número de Dígitos (k): Este paso es crucial porque
determina cuántas veces se debe repetir el proceso de clasificación. En nuestro
ejemplo, 1005 tiene 4 dígitos, por lo que realizamos cuatro iteraciones.
2. Clasificación en Cada Iteración: En cada iteración, Radix Sort clasifica los números
en función de un dígito específico, comenzando desde el dígito menos significativo y
avanzando hacia el más significativo.
○ Para cada dígito, los números se distribuyen en "cubetas" basadas en el valor
del dígito actual. Por ejemplo, durante la primera iteración, los números se
clasifican según el dígito de las unidades.
○ Después de distribuir los números en las cubetas, se recogen en orden. Este
proceso de recolección mantiene el orden relativo de los números con el
mismo valor de dígito, lo que es esencial para mantener la estabilidad del
algoritmo.
Resultado
1. Requiere Espacio Adicional: Radix Sort necesita espacio adicional para almacenar
los contenedores temporales utilizados en cada paso de clasificación, lo que puede ser
una desventaja en sistemas con memoria limitada.
2. No es Generalmente Aplicable: No es tan versátil como los algoritmos basados en
comparaciones, ya que su eficiencia depende de la longitud y el rango de los datos a
ordenar.
3. Complejidad de Implementación: Puede ser más complejo de implementar
correctamente en comparación con otros algoritmos de ordenación más intuitivos.
10
Cuadro Comparativo
11
Conclusiones
En comparación con otros algoritmos de ordenación como Quick Sort, Merge Sort y
Bubble Sort, Radix Sort muestra una serie de ventajas y desventajas. Mientras que Radix Sort
es eficiente y estable, su implementación puede ser más compleja y menos versátil en
comparación con los algoritmos basados en comparaciones. Quick Sort, aunque rápido en
promedio, no es estable y puede tener un rendimiento pobre en el peor de los casos. Merge
Sort es estable y garantiza un rendimiento consistente, pero utiliza más memoria. Bubble
Sort, aunque simple de implementar, es ineficiente para grandes conjuntos de datos.
12
Referencias bibliográficas
1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). *Introduction to
algorithms* (3rd ed.). MIT Press.
4. Ahn, H., & Kwon, D. (2006). A new efficient radix sorting algorithm. *Journal of
Computer Science and Technology*, 21(6), 874-881. https://doi.org/10.1007/s11390-006-
0874-0
6. GeeksforGeeks. (n.d.). Radix sort algorithm. Retrieved July 25, 2024, from
[https://www.geeksforgeeks.org/radix-sort/](https://www.geeksforgeeks.org/radix-sort/)
7.TutorialsPoint. (n.d.). Radix sort - A detailed explanation. Retrieved July 25, 2024,
from https://www.tutorialspoint.com/data_structures_algorithms/radix_sort_algorithm