SlideShare una empresa de Scribd logo
1 de 55
Estudiantes:
Criollo Cumbe Carlos Ismael
Barreto Paredes Christian Fabian
Valladarez Carlos
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
ORDENAMIENTO
EXTERNO DE ARCHIVOS
ÍNDICE
● Introducción
● Materiales y Métodos
● Intercalación Directa
● Intercalación Natural
● Intercalación Balanceada
● Intercalación Polifásica
● Conclusiones
● Bibliografía
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
Introducción
● Los Algoritmos de ordenamiento externo está ligado con los archivos y los
dispositivos en que se encuentran.
● Terminología Empleada:
* Separación (partición): distribución de secuencias de registros ordenados
(en varios archivos).
* Fusión: mezcla entre dos o más secuencias ordenadas (en una única
secuencia ordenada).
* Tramos: conjunto de registros que forman una unidad.
* k-vías: “número de flujos en archivos en modo lectura”.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
Materiales y Métodos
● NetBeans
● Librería Externa CSV para Java
Enlaces al código fuente en Java, tras la lógica de estos algoritmos:
Intercalación Natural y directa: https://github.com/chey3002/Ordenamientos-
externos-Directo-y-Natural
Intercalación Balanceada: https://github.com/cricucmar/OrdenamientoBalanceado
Intercalación Polifase: https://github.com/cricucmar/Ordenamiento
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
INTERCALACIÓN DIRECTA
El método de ordenación por mezcla directa es
probablemente el más utilizado por su fácil comprensión. La
idea central de este algoritmo consiste en la realización
sucesiva de una partición y una fusión que produce
secuencias ordenadas de longitud cada vez mayor.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
En la primera pasada, la partición es de longitud 1 y la fusión o mezcla produce
secuencias ordenadas de longitud 2. En la segunda pasada, la partición es de
longitud 2 y la fusión o mezcla produce secuencias ordenadas de longitud 4. Este
proceso se repite hasta que la longitud de la secuencia para la partición sea:
Parte entera ((n +l)/2).
Donde n representa el número de elementos del archivo original.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
12 4 7 32 40 3 22 14 11 20
12 4 7 32 40 3 22 14 11 20
12 7 40 22 11
4 32 3 14 20
4 12 7 32 3 40 14 22 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
4 12 7 32 3 40 14 22 11 20
4 12 3 40 11
7 32 14 22 20
4 7 12 32 3 14 22 40 11 20
4 12 7 32 3 40 14 22 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
4 7 12 32 3 14 22 40 11 20
4 7 12 32 11
3 14 22 40 20
3 4 7 12 14 22 32 40 11 20
4 7 12 32 3 14 22 40 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
3 4 7 12 14 22 32 40 11 20
3 4 7 11 12 14 20 22 32 40
3 4 7 12 14 22 32 40 11 20
INTERCALACIÓN NATURAL
El método de ordenación por intercalación natural, es una optimización del
método de mezcla directa.
La 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.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
Aplicando estas acciones en forma repetida se logrará el archivo original quede
ordenado. El proceso termina cuando en la realización de una fusión-partición el
segundo archivo quede vacío.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
12 4 7 32 40 3 22 14 11 20
12 4 7 32 40 3 22 14 11 20
12 3 22 11 20
4 7 32 40 14
4 7 12 32 40 3 14 22 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
4 7 12 32 40 3 14 22 11 20
4 7 12 32 40 11 20
3 13 22
3 4 7 12 13 22 32 40 11 20
4 7 12 32 40 3 14 22 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
3 4 7 12 14 22 32 40 11 20
3 4 7 12 14 22 32 40
11 20
3 4 7 11 12 14 20 22 32 40
3 4 7 12 14 22 32 40 11 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
3 4 7 11 12 14 20 22 32 40
3 4 7 11 12 14 20 22 32 40
INTERCALACIÓN BALANCEADA
Una intercalación balanceada de M-vías usa M archivos de entrada y M archivos
de salida en cualquier instante dado, M-1 de los archivos de salida están
desocupados.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
Características (Balanceada)
Evita el exceso de copiado de registros
Distribuye los resultados del paso de intercalación directamente en el número
apropiado de archivos para la entrada al siguiente paso de intercalación.
Una intercalación balanceada de M-vías ocupa 2M archivos
Los datos son removidos una y otra vez entre un número igual de archivos de
entrada y salida.
Los requerimientos de E/S de una intercalación natural pueden reducirse
usando una intercalación balanceada.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
Pasos (Balanceada)
1)Distribuir registros del archivo original por tramos en los m/2 primeros
archivos auxiliares, estos archivos se los tomara como archivos de entrada.
2)Se mezcla los tramos de los archivos de entrada y se los escribe
consecutivamente en los m/2 archivos auxiliares siguientes, estos archivos
se los toma como archivos de salida.
3) Los archivos cambian su finalidad, los archivos de entrada pasan a ser los
archivos de salida y viceversa.
4)El segundo paso se repite hasta que quede un solo tramo, entonces diremos
que los registros del archivo están ordenados.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
EJEMPLO (Balanceada)
Tenemos un archivo inicial
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43 11 2 5 318172019
Tenemos 6 archivos auxiliares: 3 de entrada y 3 de salida
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43 11 2 5 318172019
Distribuir registros del archivo original por tramos en los archivos auxiliares
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
23 43 11 2 5 318172019
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
11
23 43 11 2 5 318172019
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
11
2 5 19 20
23 43 11 2 5 318172019
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43 17 18
11
2 5 19 20
23 43 11 2 5 318172019
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43 17 18
11 3
2 5 19 20
23 43 11 2 5 318172019
Obtenemos 3 listas de entrada: 2 particiones
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43 17 18
11 3
2 5 19 20
Se compara la primera partición
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
11
2 5 19 20
2
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
11
5 19 20
2 5
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
11
19 20
2 5 11
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
19 20
2 5 11 19
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
20
2 5 11 19 20
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
23 43
2 5 11 19 20 4323
Se compara la segunda partición
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
17 18
3
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
17 18
3
3
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
17 18
3 17 18
Tenemos como resultado 2 archivos ordenados
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
2 5 11 19 20 4523
3 17 8
Hacemos la mezcla entre los 2 archivos ordenados
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
2 5 11 19 20 4523
3 17 18
2
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
5 11 19 20 4523
3 17 18
2 3
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
5 11 19 20 4523
17 18
2 3 5
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
11 19 20 4523
17 18
2 3 5 11
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
19 20 4523
17 18
2 3 5 11 17
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
19 20 4523
18
2 3 5 11 17 18
Obtenemos un único tramo
Obte
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
19 20 4523
2 3 5 11 17 4523201918
EJEMPLO (Balanceada)
Obtenemos un archivo final ordenado
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
2 3 5 11 17 4523201918
INTERCALACIÓN POLIFASE
● Intercalación desbalanceada
● Emplea un número constante de cintas de entrada
● Predomina una cinta de Salida (Variable en el Proceso)
● Por lo tanto, emplea k-vías con k + 1 cintas.
● Distribución no Uniforme de los tramos (La distribución de tramos iniciales
debe depender de una sucesión dependiente del número de archivos a
utilizar (m) ).
● La ejecución de una cinta viene dada por la expresión:
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
METODOLOGÍA POLIFASE
● Definir el número de cintas a usar (m) // m-1 de salida y 1 de entrada
Para m=3 T1 salida T2 salida T3 entrada
● Distribución de tramos en las archivos de salida
* Distribución Óptima ( con sucesión K-Fibonacci) → ¿Y si no se
puede?
ejm: para n=21 fibonacci → {21, 13, 8, 5, 3, 2, 1, 1}
m=3 Tramos inicial de T1 [13] y
T2 [8]
● Realizar la Intercalación recursiva hasta que quede un único tramoUNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
ESTRATEGIA DE LA INTERCALACIÓN POLIFASE
● Imagine una distribución inicial en 3 registros →
numTramos[7,6,4]
● Se busca el archivo con menor tramo y se intercala con los demás (en el
registro de escritura).
● Para la intercalación en cada fase se realiza ordenación interna.
● Se repite el proceso hasta tener un único archivo (Los registros ordenados).
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
DISTRIBUCIÓN INICIAL (
n = 15 , m = 4)
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
INTERCALACIÓN POLIFASE
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
REGISTRO ORDENADO
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
● Finalmente se obtiene un único tramo,
correspondiente al registro ordenado
● T1 se sobre escribe en ArchivoBase
X X
CONCLUSIONES
● En cuanto al método directo, se recalcar que es el método más utilizado por
su sencilla implementación.
● El método de intercalación natural es una evolución del método directo,
puesto que cambian los grupos de dimensión definida, por grupos de máxima
dimensión, haciéndolo más eficiente.
● Para el método Balanceado se puede apreciar una mejora a los anteriores
puesto que este cuenta con archivos auxiliares ya definidos y reutilizables,
realiza una sola función mientras que en el método natural se define
reiteradas veces.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
CONCLUSIONES
● El método Polifásico provee mejoras a los métodos balanceados al reducir el
número de archivos empleados, sin embargo, nótese que la dificultad radica
en la determinación de la distribución inicial, puesto que esta debe que ser
ideal, aun más si se presentan números de registros que no coinciden con la
sucesión de k-fibonacci en donde se implementan registros o tramos
ficticios, si se considera un archivo-base con 32 registros con 4 archivos
auxiliares (3 de salida, 1 de entrada), se notará la desventaja de esta
intercalación.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS
BIBLIOGRAFÍA
[1] Horowitz E, Sahni S, Fundamentals of Data Structures, capítulo 7,
Ordenamiento Externo.
[2] Joyanes A, Zahonero I, Estructura de datos en Java, Madrid, España.
UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE
SISTEMAS

Más contenido relacionado

Similar a Ordenamientos Externos

345 practica-1-dispersion-de-contaminantes-atmosferico
345 practica-1-dispersion-de-contaminantes-atmosferico345 practica-1-dispersion-de-contaminantes-atmosferico
345 practica-1-dispersion-de-contaminantes-atmosfericoMargoth CR
 
Ordenamiento de Archivos en Java
Ordenamiento de Archivos en JavaOrdenamiento de Archivos en Java
Ordenamiento de Archivos en JavaErick Barzallo
 
Algoritmos intercalación
Algoritmos intercalaciónAlgoritmos intercalación
Algoritmos intercalaciónPaul Arévalo
 
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos Autónomos
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos AutónomosLaboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos Autónomos
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos AutónomosJUAN AGUILAR
 
Laboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosLaboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosmaria_amanta
 
Laboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosLaboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosmaria_amanta
 
Informe visita labotario de biotecnologia.pdf
Informe visita labotario de biotecnologia.pdfInforme visita labotario de biotecnologia.pdf
Informe visita labotario de biotecnologia.pdfGian Rivera Bustamante
 
Informe final-lab 3 suelos 2
Informe final-lab 3 suelos 2Informe final-lab 3 suelos 2
Informe final-lab 3 suelos 2gaaaaa gaaaaa
 
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...NuioKila
 
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN R
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN RDISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN R
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN RDennis Ventura Huaman
 

Similar a Ordenamientos Externos (14)

Dispersion de contamienantes
Dispersion de contamienantesDispersion de contamienantes
Dispersion de contamienantes
 
345 practica-1-dispersion-de-contaminantes-atmosferico
345 practica-1-dispersion-de-contaminantes-atmosferico345 practica-1-dispersion-de-contaminantes-atmosferico
345 practica-1-dispersion-de-contaminantes-atmosferico
 
Ordenamiento de Archivos en Java
Ordenamiento de Archivos en JavaOrdenamiento de Archivos en Java
Ordenamiento de Archivos en Java
 
C-Tri SQL
C-Tri SQLC-Tri SQL
C-Tri SQL
 
Algoritmos intercalación
Algoritmos intercalaciónAlgoritmos intercalación
Algoritmos intercalación
 
Algoritmos de ordenamiento externos
Algoritmos de ordenamiento externosAlgoritmos de ordenamiento externos
Algoritmos de ordenamiento externos
 
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos Autónomos
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos AutónomosLaboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos Autónomos
Laboratorio Remoto para el Aprendizaje de los Sistemas Fotovoltaicos Autónomos
 
Laboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosLaboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricos
 
Laboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricosLaboratorio n 4 circuitos electricos
Laboratorio n 4 circuitos electricos
 
Informe visita labotario de biotecnologia.pdf
Informe visita labotario de biotecnologia.pdfInforme visita labotario de biotecnologia.pdf
Informe visita labotario de biotecnologia.pdf
 
Informe final-lab 3 suelos 2
Informe final-lab 3 suelos 2Informe final-lab 3 suelos 2
Informe final-lab 3 suelos 2
 
Informe de bio filogenia
Informe de bio filogeniaInforme de bio filogenia
Informe de bio filogenia
 
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
 
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN R
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN RDISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN R
DISTRIBUCIONES ESTADISTICAS EN HIDROLOGÍA Y SU APLICACIÓN EN R
 

Último

DIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptDIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptalisonsarmiento4
 
Trabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoTrabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoAntonioCardenas58
 
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOSTEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOSCarlosHuamulloDavila1
 
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...jose880240
 
subestaciones electricas , elementos y caracteristicas
subestaciones electricas , elementos y caracteristicassubestaciones electricas , elementos y caracteristicas
subestaciones electricas , elementos y caracteristicaszaydaescalona
 
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPODIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPOSegundo Silva Maguiña
 
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZvarichard
 
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfSegundo Silva Maguiña
 
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptxREGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptxJhonLeon59
 
Presentación_ Marco general de las contrataciones públicas.pdf
Presentación_ Marco general de las contrataciones públicas.pdfPresentación_ Marco general de las contrataciones públicas.pdf
Presentación_ Marco general de las contrataciones públicas.pdffernandolozano90
 
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHInmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHVivafornai
 
S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfSalomeRunco
 
Cuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdfCuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdffredyflores58
 
las humanidades y su impotancia en la formación integral del ingeniero
las humanidades y su impotancia en la formación integral del ingenierolas humanidades y su impotancia en la formación integral del ingeniero
las humanidades y su impotancia en la formación integral del ingenieroJsValdez
 
1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdf1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdfThe16Frame
 
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfPRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfjorge477728
 
TYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxTYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxLilibethBallesteros1
 
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdfMirkaCBauer
 

Último (20)

DIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptDIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.ppt
 
Trabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoTrabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayo
 
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOSTEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
TEST ESPACIAL CONTEO DE CUBOS y TEST DE MOSAICOS
 
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
 
subestaciones electricas , elementos y caracteristicas
subestaciones electricas , elementos y caracteristicassubestaciones electricas , elementos y caracteristicas
subestaciones electricas , elementos y caracteristicas
 
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPODIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
 
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
 
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
 
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptxREGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
 
50870516-hidroponia. descargado en novppt
50870516-hidroponia. descargado en novppt50870516-hidroponia. descargado en novppt
50870516-hidroponia. descargado en novppt
 
Presentación_ Marco general de las contrataciones públicas.pdf
Presentación_ Marco general de las contrataciones públicas.pdfPresentación_ Marco general de las contrataciones públicas.pdf
Presentación_ Marco general de las contrataciones públicas.pdf
 
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHInmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
 
S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdf
 
Cuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdfCuestionario 20222222222222222222222224.pdf
Cuestionario 20222222222222222222222224.pdf
 
las humanidades y su impotancia en la formación integral del ingeniero
las humanidades y su impotancia en la formación integral del ingenierolas humanidades y su impotancia en la formación integral del ingeniero
las humanidades y su impotancia en la formación integral del ingeniero
 
1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdf1.1 Los 14 principios del Toyota Way -2024.pdf
1.1 Los 14 principios del Toyota Way -2024.pdf
 
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
 
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfPRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
 
TYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxTYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptx
 
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
 

Ordenamientos Externos

  • 1. Estudiantes: Criollo Cumbe Carlos Ismael Barreto Paredes Christian Fabian Valladarez Carlos UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS ORDENAMIENTO EXTERNO DE ARCHIVOS
  • 2. ÍNDICE ● Introducción ● Materiales y Métodos ● Intercalación Directa ● Intercalación Natural ● Intercalación Balanceada ● Intercalación Polifásica ● Conclusiones ● Bibliografía UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 3. Introducción ● Los Algoritmos de ordenamiento externo está ligado con los archivos y los dispositivos en que se encuentran. ● Terminología Empleada: * Separación (partición): distribución de secuencias de registros ordenados (en varios archivos). * Fusión: mezcla entre dos o más secuencias ordenadas (en una única secuencia ordenada). * Tramos: conjunto de registros que forman una unidad. * k-vías: “número de flujos en archivos en modo lectura”. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 4. Materiales y Métodos ● NetBeans ● Librería Externa CSV para Java Enlaces al código fuente en Java, tras la lógica de estos algoritmos: Intercalación Natural y directa: https://github.com/chey3002/Ordenamientos- externos-Directo-y-Natural Intercalación Balanceada: https://github.com/cricucmar/OrdenamientoBalanceado Intercalación Polifase: https://github.com/cricucmar/Ordenamiento UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 5. INTERCALACIÓN DIRECTA El método de ordenación por mezcla directa es probablemente el más utilizado por su fácil comprensión. La idea central de este algoritmo consiste en la realización sucesiva de una partición y una fusión que produce secuencias ordenadas de longitud cada vez mayor. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 6. En la primera pasada, la partición es de longitud 1 y la fusión o mezcla produce secuencias ordenadas de longitud 2. En la segunda pasada, la partición es de longitud 2 y la fusión o mezcla produce secuencias ordenadas de longitud 4. Este proceso se repite hasta que la longitud de la secuencia para la partición sea: Parte entera ((n +l)/2). Donde n representa el número de elementos del archivo original. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 7. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 12 4 7 32 40 3 22 14 11 20 12 4 7 32 40 3 22 14 11 20 12 7 40 22 11 4 32 3 14 20 4 12 7 32 3 40 14 22 11 20
  • 8. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 4 12 7 32 3 40 14 22 11 20 4 12 3 40 11 7 32 14 22 20 4 7 12 32 3 14 22 40 11 20 4 12 7 32 3 40 14 22 11 20
  • 9. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 4 7 12 32 3 14 22 40 11 20 4 7 12 32 11 3 14 22 40 20 3 4 7 12 14 22 32 40 11 20 4 7 12 32 3 14 22 40 11 20
  • 10. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 3 4 7 12 14 22 32 40 11 20 3 4 7 11 12 14 20 22 32 40 3 4 7 12 14 22 32 40 11 20
  • 11. INTERCALACIÓN NATURAL El método de ordenación por intercalación natural, es una optimización del método de mezcla directa. La 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. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 12. Aplicando estas acciones en forma repetida se logrará el archivo original quede ordenado. El proceso termina cuando en la realización de una fusión-partición el segundo archivo quede vacío. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 13. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 12 4 7 32 40 3 22 14 11 20 12 4 7 32 40 3 22 14 11 20 12 3 22 11 20 4 7 32 40 14 4 7 12 32 40 3 14 22 11 20
  • 14. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 4 7 12 32 40 3 14 22 11 20 4 7 12 32 40 11 20 3 13 22 3 4 7 12 13 22 32 40 11 20 4 7 12 32 40 3 14 22 11 20
  • 15. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 3 4 7 12 14 22 32 40 11 20 3 4 7 12 14 22 32 40 11 20 3 4 7 11 12 14 20 22 32 40 3 4 7 12 14 22 32 40 11 20
  • 16. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 3 4 7 11 12 14 20 22 32 40 3 4 7 11 12 14 20 22 32 40
  • 17. INTERCALACIÓN BALANCEADA Una intercalación balanceada de M-vías usa M archivos de entrada y M archivos de salida en cualquier instante dado, M-1 de los archivos de salida están desocupados. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 18. Características (Balanceada) Evita el exceso de copiado de registros Distribuye los resultados del paso de intercalación directamente en el número apropiado de archivos para la entrada al siguiente paso de intercalación. Una intercalación balanceada de M-vías ocupa 2M archivos Los datos son removidos una y otra vez entre un número igual de archivos de entrada y salida. Los requerimientos de E/S de una intercalación natural pueden reducirse usando una intercalación balanceada. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 19. Pasos (Balanceada) 1)Distribuir registros del archivo original por tramos en los m/2 primeros archivos auxiliares, estos archivos se los tomara como archivos de entrada. 2)Se mezcla los tramos de los archivos de entrada y se los escribe consecutivamente en los m/2 archivos auxiliares siguientes, estos archivos se los toma como archivos de salida. 3) Los archivos cambian su finalidad, los archivos de entrada pasan a ser los archivos de salida y viceversa. 4)El segundo paso se repite hasta que quede un solo tramo, entonces diremos que los registros del archivo están ordenados. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 20. EJEMPLO (Balanceada) Tenemos un archivo inicial UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 2 5 318172019
  • 21. Tenemos 6 archivos auxiliares: 3 de entrada y 3 de salida UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 2 5 318172019
  • 22. Distribuir registros del archivo original por tramos en los archivos auxiliares UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 23 43 11 2 5 318172019
  • 23. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 23 43 11 2 5 318172019
  • 24. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 2 5 19 20 23 43 11 2 5 318172019
  • 25. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 17 18 11 2 5 19 20 23 43 11 2 5 318172019
  • 26. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 17 18 11 3 2 5 19 20 23 43 11 2 5 318172019
  • 27. Obtenemos 3 listas de entrada: 2 particiones UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 17 18 11 3 2 5 19 20
  • 28. Se compara la primera partición UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 2 5 19 20 2
  • 29. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 5 19 20 2 5
  • 30. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 11 19 20 2 5 11
  • 31. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 19 20 2 5 11 19
  • 32. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 20 2 5 11 19 20
  • 33. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 23 43 2 5 11 19 20 4323
  • 34. Se compara la segunda partición UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 17 18 3
  • 35. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 17 18 3 3
  • 36. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 17 18 3 17 18
  • 37. Tenemos como resultado 2 archivos ordenados UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 2 5 11 19 20 4523 3 17 8
  • 38. Hacemos la mezcla entre los 2 archivos ordenados UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 2 5 11 19 20 4523 3 17 18 2
  • 39. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 5 11 19 20 4523 3 17 18 2 3
  • 40. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 5 11 19 20 4523 17 18 2 3 5
  • 41. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 11 19 20 4523 17 18 2 3 5 11
  • 42. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 19 20 4523 17 18 2 3 5 11 17
  • 43. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 19 20 4523 18 2 3 5 11 17 18
  • 44. Obtenemos un único tramo Obte UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 19 20 4523 2 3 5 11 17 4523201918
  • 45. EJEMPLO (Balanceada) Obtenemos un archivo final ordenado UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS 2 3 5 11 17 4523201918
  • 46. INTERCALACIÓN POLIFASE ● Intercalación desbalanceada ● Emplea un número constante de cintas de entrada ● Predomina una cinta de Salida (Variable en el Proceso) ● Por lo tanto, emplea k-vías con k + 1 cintas. ● Distribución no Uniforme de los tramos (La distribución de tramos iniciales debe depender de una sucesión dependiente del número de archivos a utilizar (m) ). ● La ejecución de una cinta viene dada por la expresión: UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 47. METODOLOGÍA POLIFASE ● Definir el número de cintas a usar (m) // m-1 de salida y 1 de entrada Para m=3 T1 salida T2 salida T3 entrada ● Distribución de tramos en las archivos de salida * Distribución Óptima ( con sucesión K-Fibonacci) → ¿Y si no se puede? ejm: para n=21 fibonacci → {21, 13, 8, 5, 3, 2, 1, 1} m=3 Tramos inicial de T1 [13] y T2 [8] ● Realizar la Intercalación recursiva hasta que quede un único tramoUNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 48. ESTRATEGIA DE LA INTERCALACIÓN POLIFASE ● Imagine una distribución inicial en 3 registros → numTramos[7,6,4] ● Se busca el archivo con menor tramo y se intercala con los demás (en el registro de escritura). ● Para la intercalación en cada fase se realiza ordenación interna. ● Se repite el proceso hasta tener un único archivo (Los registros ordenados). UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 49. DISTRIBUCIÓN INICIAL ( n = 15 , m = 4) UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 50. INTERCALACIÓN POLIFASE UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 51. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 52. REGISTRO ORDENADO UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS ● Finalmente se obtiene un único tramo, correspondiente al registro ordenado ● T1 se sobre escribe en ArchivoBase X X
  • 53. CONCLUSIONES ● En cuanto al método directo, se recalcar que es el método más utilizado por su sencilla implementación. ● El método de intercalación natural es una evolución del método directo, puesto que cambian los grupos de dimensión definida, por grupos de máxima dimensión, haciéndolo más eficiente. ● Para el método Balanceado se puede apreciar una mejora a los anteriores puesto que este cuenta con archivos auxiliares ya definidos y reutilizables, realiza una sola función mientras que en el método natural se define reiteradas veces. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 54. CONCLUSIONES ● El método Polifásico provee mejoras a los métodos balanceados al reducir el número de archivos empleados, sin embargo, nótese que la dificultad radica en la determinación de la distribución inicial, puesto que esta debe que ser ideal, aun más si se presentan números de registros que no coinciden con la sucesión de k-fibonacci en donde se implementan registros o tramos ficticios, si se considera un archivo-base con 32 registros con 4 archivos auxiliares (3 de salida, 1 de entrada), se notará la desventaja de esta intercalación. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS
  • 55. BIBLIOGRAFÍA [1] Horowitz E, Sahni S, Fundamentals of Data Structures, capítulo 7, Ordenamiento Externo. [2] Joyanes A, Zahonero I, Estructura de datos en Java, Madrid, España. UNIVERSIDAD DE CUENCA PROGRAMACION 3 INGENIERÍA DE SISTEMAS