El documento describe tres algoritmos de ordenamiento externo: 1) Intercalación, que ordena mediante la mezcla de dos archivos ordenados en uno solo, 2) Mezcla directa, que divide y fusiona secuencias de datos de forma recursiva hasta ordenar la secuencia completa, y 3) Mezcla natural, que mejora la mezcla directa ordenando secuencias de longitud máxima entre archivos auxiliares hasta completar el ordenamiento.
1. Instituto Tecnológico
Superior de Jesús Carranza
Carrera:
Ingeniería en sistemas computacionales
Materia:
Estructura de datos
Investigación:
Algoritmo de ordenamiento externo
Docente:
Ing. Rafael Aguilar Sixto
Alumno:
Eladio Terán castro
2. Contenido
INTERCALACIÓN........................................................................................................................ 2
MEZCLA DIRECTA ...................................................................................................................... 3
MEZCLA NATURAL..................................................................................................................... 4
INTERCALACIÓN
En este método de ordenamiento existen dos archivos con llaves ordenadas, los
cuales se mezclan para formar un solo archivo. La longitud de los archivos puede
ser diferente. El proceso consiste en leer un registro de cada archivo y
compararlos, el menor es almacenando en el archivo de resultado y el otro se
compara con el siguiente elemento del archivo si existe. El proceso se repite hasta
que alguno de los archivos quede vacío y los elementos del otro archivo se
almacenan directamente en el archivo resultado.
3. Por intercalación de archivos se entiende la unión o fusión de dos o más archivos,
previamente ordenados, en un solo archivo, el cual debe quedar ordenado al
hacer la intercalación.
Si se cuenta con dos archivos con datos previamente ordenados, el proceso de
intercalación entre los dos archivos, consiste en extraer el primer elemento de
cada archivo y determinar cuál es el menor, para colocarlo en el tercer archivo,
extraer el siguiente elemento del archivo y compararlo nuevamente contra el otro
elemento que ya se tenía del otro archivo, para determinar cuál ingresa al tercer
archivo, este proceso se repita hasta que uno de los archivos originales llegue
hasta el fin, en este caso, solo resta transcribir los números del archivo que no se
ha llegado a su fin al tercer archivo.
MEZCLADIRECTA
Algoritmo de Mezcla Directa:
Dividir una secuencia inicial de datos en dos sub cadenas y mezclar elemento a
elemento de forma ordenada.
El proceso se repite hasta que la secuencia inicial queda totalmente ordenada.
Pasos:
1) Se divide la secuencia inicial de datos del fichero a
en dos mitades b y c
2) Se mezclan b y c combinando elementos aislados para formar pares
ordenados
3) La secuencia resultante se almacena en el fichero a y se repiten los pasos 1)
y 2) para formar cuádruplos ordenados.
4) Se repiten los pasos anteriores para formar octetos ordenados, y así
sucesivamente.
4. Mezcla directa es un algoritmo de ordenación externa, que permite organizar los
elementos de un archivo, de forma ascendente o descendente.
La idea centrar de este algoritmo consiste en realizar de forma sucesiva una
partición y una fusión que produce secuencias ordenadas de longitud cada vez
mayor. En la primera pasada la partición es de longitud 1 y la fusión produce
secuencias ordenadas de longitud 2. En la segunda pasada la partición es de
longitud 2 y la fusión produce secuencias ordenadas de longitud 4. Este proceso
se repite hasta que la longitud de la partición sea menor o igual al número de
elementos del archivo original.
MEZCLANATURAL
Es una mejora del algoritmo de mezcla directa puesto que en vez de considerar
tramos de tamaño fijo se toman en cuenta para la ordenación en todo momento
tramos de longitud máxima. Al igual que la mezcla directa se debe hacer un
proceso de partir el archivo original para mezclarlo, posteriormente mientras en el
archivo C haya elementos a mezclar.
La mezcla natural o mezcla equilibrada es un algoritmo de ordenación externa,
que se encarga de organizar los elementos de un archivo de forma ascendente o
descendente. La idea central de este algoritmo consiste en realizar particiones
tomando secuencias ordenadas de máxima longitud en lugar de secuencias
ordenadas de tamaño fijo previamente determinadas, como la intercalación
directa. Posteriormente se realiza la fusión de esas secuencias ordenadas,
alternándolas entre los dos archivos auxiliares. Repitiendo este proceso, se logra
que el archivo quede completamente ordenado. Para aplicar este algoritmo, se
necesitarán cuatro archivos. El archivo original y tres archivos auxiliares. De estos
cuatro archivos, dos serán considerados de entrada y dos de salida,
alternativamente en cada paso del algoritmo. El proceso termina cuando al
finalizar un paso, el segundo archivo de salida quede vacío y el primero queda
completamente ordenado.