Metodo De Ordenamiento "Mezcla Directa"
Al ocurrir esta situación no pueden aplicarse los métodos de ordenación interna, de modo que debe pensarse en otro tipo de algoritmos para ordenar datos almacenados en archivos.
Por ordenación de archivos se entiende, entonces, la ordenación o clasificación de éstos, ascendente o descendentemente, de acuerdo con un campo determinado al que se denominará campo clave. La principal desventaja de esta ordenación es el tiempo de ejecución, debido a las sucesivas operaciones de entrada y salida.
Los dos métodos de ordenación externa más importantes son los basados en la …ver más…
F1: 09 14 68 75 04 05 13 18
F2: 17 25 29 31 46 61 72
Fusión en secuencias de longitud 8.
F1: 09 14 75 25 29 31 68 75 04 05 13 18 46 61 72
CUARTA PASADA
Partición en secuencias de longitud 8.
F1: 09 14 17 25 29 31 68 75
F2: 04 05 13 18 46 61 72
Fusión en secuencias de longitud 16.
F1: 04 05 09 13 14 17 18 25 29 31 46 61 68 72 75
A continuación presentamos el algoritmo de ordenación por el método de mezcla directa.
Algoritmo Mezcladirecta:
MEZCLADIRECTA {F, F1, F2, N}
{El algoritmo ordena los elementos del archivo F por el método de mezcla directa. Utiliza dos archivos auxiliares F1 y F2. N es el número de elementos del archivo F}
{PART es una variable de tipo entero}
1. Hacer PART←1
2. Repetir mientras PART N
Llamar al algoritmo PARTICIONA con F, F1, F2 y PART.
Llamar al algoritmo FUSIONA con F, F1, F2 y PART.
Hacer PART← PART*2
3. {Fin del ciclo del paso 2}
obsérvese que el algoritmo requiere para su funcionamiento de dos algoritmos auxiliares, los cuales se presentan a continuación.
Algoritmo Particiona:
PARTICIONA {F, F1, F2, PART}
{El algoritmo Particiona el archivo F en dos archivos auxiliares, F1 y F2. PART es la longitud de la partición que se va a realizar}
{K, L y R son variables de tipo entero}
1. Abrir el archivo F para lectura.
2. Abrir los archivos f1 y f2 para escritura
3. Repetir mientras {no sea el fin de archivo de F}
Hacer k←0
3.1 Repetir mientras