45
ORDENAMIENTO DE ARCHIVOS EXTERNOS MIGUEL MACÍAS JEFFERSON ARIAS EMILY ARTEAGA

Ordenamiento de Archivos Externos

Embed Size (px)

Citation preview

Page 1: Ordenamiento de Archivos Externos

ORDENAMIENTO DE ARCHIVOS

EXTERNOSMIGUEL MACÍASJEFFERSON ARIASEMILY ARTEAGA

Page 2: Ordenamiento de Archivos Externos

TIPOS DE ORDENAMIENTOS

- Directa- Natural- Balanceada- Polifase

Page 3: Ordenamiento de Archivos Externos

Order It

Page 4: Ordenamiento de Archivos Externos

DIRECTA

•En este método de ordenamiento se realiza una partición sucesiva y una fusión, lo que permite que hayan particiones ordenadas de longitud mayor en cada pasada.

Particiones

1 2 4 8 16 32 particion*2

pasada 1 pasada 2 pasada 3 pasada 4 pasada 5 pasada 6 pasada n

Page 5: Ordenamiento de Archivos Externos

DIRECTA - Proceso❖ Separar los registros individuales del archivo original O en dos archivos auxiliares, F1 y F2.❖ Mezclar los archivos F1 y F2 combinando registros aislados y formando pares ordenados que son

escritos en el archivo 0.

❖ Se repiten los pasos de separación y mezcla, combinando n-tuplas para formar 2n-tuplas ordenadas. En cada paso se duplica el tamaño de las subsecuencias, hasta que la longitud de las secuencias sea mayor o igual al número de registros que tiene el archivo Original.

Page 6: Ordenamiento de Archivos Externos

EjemploSe tiene un archivo con llaves de tipo entero:

Pasada 1

Page 7: Ordenamiento de Archivos Externos

EjemploPasada 2

Pasada 3

Page 8: Ordenamiento de Archivos Externos

EjemploPasada 4

Después de n pasadas, se tiene que el archivo O con subsecuencias ordenadas de 2^n, donde si 2^n es mayor o igual que el número de registros del archivo, entonces este se encuentra ordenado.

Page 9: Ordenamiento de Archivos Externos

Codificación

Page 10: Ordenamiento de Archivos Externos

Codificación

Page 11: Ordenamiento de Archivos Externos

Codificación

Page 12: Ordenamiento de Archivos Externos

Codificación

Page 13: Ordenamiento de Archivos Externos

Codificación

Page 14: Ordenamiento de Archivos Externos

Intercalación NaturalSe basa en la combinación de subsecuencias ordenadas.

Las subsecuencias ordenadas del archivo fuente, se distribuyen en dos archivos de destino auxiliares a y b.

Seguidamente se mezcla una subsecuencia ordenada de cada archivo auxiliar.

Page 15: Ordenamiento de Archivos Externos

Ejemplo

Page 16: Ordenamiento de Archivos Externos

Main Natural

Page 17: Ordenamiento de Archivos Externos

Codificación

Page 18: Ordenamiento de Archivos Externos

Codificación

Page 19: Ordenamiento de Archivos Externos

Codificación

Page 20: Ordenamiento de Archivos Externos

Codificación

Page 21: Ordenamiento de Archivos Externos

Codificación

Page 22: Ordenamiento de Archivos Externos

Intercalación BalanceadaLa idea central de este algoritmo consiste en realizar las particiones tomando secuencias ordenadas de máxima longitud en lugar de secuencias de tamaño fijo previamente determinadas. Luego se realiza la fusión de las secuencias ordenadas, en alternada, sobre dos archivos. Aplicando estas acciones en forma repetida se logrará el archivo original quede ordenado. Para la realization de este proceso de ordenación se necesitaran cuatro archivos.

El archivo original F y tres archivos auxiliares a los que se denominará F1, F2 y F3. De estos archivos, dos serán considerados de entrada y dos de salida; esto, de manera alternada, con el objeto de realizar la fusión-partición. El proceso termina cuando en la realización de una fusión-partición el segundo archivo quede vacío.

Page 23: Ordenamiento de Archivos Externos

EjemploArchivo Original:

Partición Inicial:

Fusión Partición Inicial:

Page 24: Ordenamiento de Archivos Externos

EjemploPartición y Fusión 2:

Partición y Fusión 3:

Page 25: Ordenamiento de Archivos Externos

Codificación

Page 26: Ordenamiento de Archivos Externos

Codificación

Page 27: Ordenamiento de Archivos Externos

Codificación

Page 28: Ordenamiento de Archivos Externos

Codificación

Page 29: Ordenamiento de Archivos Externos

Codificación

Page 30: Ordenamiento de Archivos Externos

Codificación

Page 31: Ordenamiento de Archivos Externos

Codificación

Page 32: Ordenamiento de Archivos Externos

Codificación

Page 33: Ordenamiento de Archivos Externos

Main Balaceada

Page 34: Ordenamiento de Archivos Externos

Main Balanceada

Page 35: Ordenamiento de Archivos Externos

Intercalación PolifaseSe trata de una intercalación de m vías utiliza 2*m-1 archivos de entrada y 1 archivo de salida. Las k listas se distribuyen de manera no uniforme en los 2*m-1 archivos de entrada.

El primer archivo de entrada que queda sin registros va a ser el archivo de salida y el archivo de salida pasa a ser de entrada y así se va repitiendo hasta que uno de los archivos tenga los registros ordenados

La idea básica tras este método es aplicar una estrategia mezclar hasta vaciar el archivo, utilizando archivos auxiliares para almacenar el resultado parcial. Durante la ejecución, el archivo de entrada y alguno de salida intercambian papeles y siempre se tiene alguno vacío.

Page 36: Ordenamiento de Archivos Externos

Pasos 1 - Intercalación Balaceada

Page 37: Ordenamiento de Archivos Externos

Paso 2 - Intercala para la cinta 3 dejando libre la cinta 2

Page 38: Ordenamiento de Archivos Externos

Paso 3 - Fusiona la cinta 1 y la 3 en la 2, dejando libre la cinta 1

Page 39: Ordenamiento de Archivos Externos

Paso 4 - Intercala la cinta

Page 40: Ordenamiento de Archivos Externos

Codificación

Page 41: Ordenamiento de Archivos Externos

Codificación

Page 42: Ordenamiento de Archivos Externos

Codificación

Page 43: Ordenamiento de Archivos Externos

Codificación

Page 44: Ordenamiento de Archivos Externos

Codificación

Page 45: Ordenamiento de Archivos Externos

Main Polifase