2. DEFINICIÓN
Los algoritmos de ordenamiento por
distribución, ordenan el arreglo tomando cada
número e insertándolo en la posición que
toma su valor, es decir, si se tiene un cinco se
coloca en la posición cinco del arreglo.
RADIX
Es un algoritmo de ordenamiento conocido
por ordenar enteros a partir de sus dígitos de
forma individual.
Ejemplo de ordenamiento
por distribución
3. Ordenamiento Radix
Se presenta un ejemplo de ordenamiento
Radix a partir del siguiente vector:
11 – 34 – 90 – 30 – 37 - 82
Primero se ordena la unidad de cada
número dentro del vector de menor a
mayor
Quedando así:
Después se ordena la decena de
cada número dentro del nuevo vector
de menor a mayor
Finalmente quedando así:
4. ALGORITMO RADIX EN C++
1. (línea 76) Primero se llama a la función "calcularValorMaximo", que
recorre el array para encontrar el valor máximo. Este valor máximo
se utilizará más adelante para determinar el número de dígitos del
número más grande.
2. (línea78 -80) Luego se realiza un bucle "for" que se ejecutará para
cada dígito del número más grande. El bucle comienza con exp = 1
y se multiplica por 10 en cada iteración hasta que getValorMaximo()
/ exp sea igual a cero. Dentro del bucle "for", se crea un array
"salida" del mismo tamaño que el array de entrada para almacenar
el array ordenado. Se crea un array "contador" de tamaño 10
inicializado en cero para contar la cantidad de elementos con cada
dígito.
3. (línea 82 -88) Se recorre el array de entrada y se incrementa el
contador correspondiente al dígito del número actual. Se suma cada
contador con el valor anterior para obtener la posición en el array
"salida" donde se colocará cada elemento.
4. (línea 90 -94) Se recorre el array de entrada en orden inverso y se
obtiene el dígito correspondiente al número actual. Se utiliza el
contador correspondiente al dígito para obtener la posición donde
se colocará el número en el array "salida". Se decrementa el
contador correspondiente al dígito para la próxima iteración.
5. (línea 96 -100) Finalmente, se copia el array "salida" ordenado de
vuelta al array de entrada y se repite el proceso con el siguiente
dígito. Después de que se han ordenado todos los dígitos, se
5. Se introducirá un vector de tamaño 6:
11 – 34 – 90 – 30 – 37 - 82
Se determina el tamaño del vector previamente estipulando un rango
de 2 a 10 números, validando solo la entrada de números enteros
Ordenamiento descendente
Ordenamiento Ascendente
EJECUCIÓN DE ALGORTIMO
6. • Una ventaja del ordenamiento por distribución es que tiene una complejidad temporal lineal en relación con el
tamaño del array de entrada, lo que lo convierte en una opción eficiente para grandes conjuntos de datos.
• una desventaja es que puede requerir memoria adicional para almacenar los arrays auxiliares utilizados durante
el proceso de ordenamiento. Además, su implementación puede ser un poco más compleja que otros
algoritmos de ordenamiento más comunes como el quicksort o el mergesort.
CONCLUSIÓN:
7. • Algoritmo de Ordenamiento Radix Sort. (2012, 30 agosto). arq_232.
https://arq232.wordpress.com/2012/08/30/algoritmo-de-ordenamiento-radix-sort/
• Métodos de Ordenación - Estructura de Datos. (s. f.).
https://sites.google.com/site/estructuradedatosmaac/home/metodos-de-ordenacion
WEBGRAFÍA: