SlideShare una empresa de Scribd logo
Ordenamiento de
Archivos en Java
Estructura de Archivos
Integrantes:
Erick Barzallo
David Buñay
Gabriela Verdugo
Introducción.
En ocasiones cuando se posee gran cantidad de
datos que no caben en la memoria interna y se
guardan en una memoria externa, es ahí cuando los
algoritmos de ordenamiento externo son de gran
ayuda y se presentarán a continuación.
Mezcla Directa
Mezcla Directa.
Es el método más simple de ordenación:
Utiliza el el esquema iterativo de separar secuencias de registros y su
mezcla.
Se opera con el archivo original y dos archivos auxiliares.
Funcionamiento.
Lista a ordenar:
Separar el archivo original en dos archivos f1 y f2 :
34 12 59 73 44 8 19 28 51
f1
23
f2
Funcionamiento.
f1 34
f2 23
Funcionamiento.
f1 34
f2 23
12
59
Funcionamiento.
f1 34
f2 23
12
59
73
44
Funcionamiento.
f1 34
f2 23
12
59
73
44
8
19
Funcionamiento.
f1 34
f2 23
12
59
73
44
8
19
28
51
Funcionamiento.
Mezclar los archivos f1 y f2 combinando registros aislados (según sus claves) y
formando pares ordenados que son escritos en el archivo O.
Separar pares de registros del archivo original O en los dos archivos auxiliares f1 y f2.
O 23 34 12 59 44 73 8 19 28 51
f1 23 34 44 73 28 51
f2 12 59 8 19
Funcionamiento
Mezclar los archivos f1 y f2 combinando registros aislados (según sus claves) y
formando pares ordenados que son escritos en el archivo O.
O 12 23 34 59 8 4419 73 28 51
Funcionamiento.
Se repiten los pasos de separación y mezcla, combinando cuádruplos para formar
óctuplos ordenados. En cada paso de separación y mezcla se duplica el tamaño de
las subsecuencias mezcladas, así hasta que la longitud de la subsecuencia sea la
que tiene el archivo, y en ese momento el archivo original O está ordenado.
Separación de cuádruplos:
f1 12 23 34 59 28 51
f2 8 19 44 73
Funcionamiento.
Mezcla formando óctuplos ordenados:
Separación de octuplos:
O 8 12 19 23 34 44 59 73 28 51
f1 8 12 19 23 34 44 59 73
f2 28 51
Funcionamiento.
Mezcla con la que ya se obtiene el archivo ordenado:
O 8 12 23 28 34 44 51 59 73
LISTA ORDENADA
Mezcla Natural
Mezcla Natural
El método de fusión natural mejora el tiempo de ejecución de la mezcla directa al
introducir una pequeña variación respecto a la longitud de las secuencias de
registros.
En el método de mezcla directa, las secuencias de registros tiene longitudes que son
múltiplos de dos: 1, 2, 4,8, 16... de tal forma que el número de pasadas a realizar es
fijo, dependiente del número de registros.
La mezcla directa no tiene en cuenta la circunstancia de que pueda haber, de manera
natural, secuencias más largas ya ordenadas que también puedan mezclarse y dar
lugar a otra secuencia ordenada.
Funcionamiento.
Lista a ordenar:
Separación:
9 10 3 4 5 25 26 13 14 1
f1 9 10
f2 3 4
25
5
26 1
13 14
2
2
Funcionamiento
Fusión:
Separación:
3 4 5 9 10 13 14 25 26 1 2
f1 3 4 5 9 10 1 2
f2 13 14 25 26
Funcionamiento.
Fusión:
Separación:
3 4 5 9 10 13 14 25 1 2
f1 3 4 5 9 10 13 14 25 26
f2 1 2
Funcionamiento.
Fusión.
1 2 3 4 5 9 10 13 14 25 26
LISTA ORDENADA
Intercalación Polifásica
Intercalación Polifásica
- La idea básica de este método es aplicar una mezcla estratégica hasta
vaciar el archivo
El método polifásico utiliza m archivos auxiliares para ordenar n registros de un archivo.
La característica que marca la diferencia de este método respecto a los otros es que
continuamente se consideran m-1 archivos de entrada, desde los que se mezclan
registros, y un archivo de salida.
En el momento en que uno de los archivos de entrada alcanza su final hay un cambio de
cometido, pasa a ser considerado como archivo de salida, y el archivo que en ese
momento era de salida pasa a ser de entrada y la mezcla de tramos continúa.
Características
- Utiliza m archivos auxiliares
- Se diferencia del resto de intercalados por la consideración de m-1 archivos
- Cuando un archivo de entrada alcanza su final, pasa a ser considerado
archivo de salida
- Cabe recordar
- La mezcla de k tramos de los archivos de entrada se transforman en kntramos en el archivo
de salida
Fases
- Mientras existan datos de entrada en T0, se debe seguir los siguientes
pasos:
- Fase 1
- Leer m llaves
- Ordenar las llaves por método interno
- Si las llaves anteriores se colocaron en T2, se procede a colocarlas en T3, caso
contrario, colocarlas en T3
- Fase 2
- Intercalar el primer bloque en T2 con el primer bloque de T3
Ejemplo con m=3 archivos
- Archivo original con 55 tramos
- Archivos auxiliares m=3
- 2 archivos de entrada y 1 de salida
Proceso
1. Distribuir de forma no uniforme en los archivos F1 con 34 tramos y en F2
con 21 tramos por ejemplo
1. Se realiza la fusión de 21 tramos de F1 con los 21 tramos de F2, dando así
lugar a 21 tramos en F3
55 Tramos
F1 34
F2 21
F3 0
55 Tramos
F1 34 13
F2 21 0
F3 0 21
3. F1 alcanza 13 tramos, F2 queda vacío y F3 consta con 21 tramos
4. F2 pasa a ser archivo de salida mientras que la mezcla continua entre F1
y F3
55 Tramos
F1 34 13
F2 21 0
F3 0 21
5. Se repite la mezcla pero con F1 y F3 igual a 13 tramos, los cuales se
pasan al F2
6. F1 queda vacío por lo cual pasa a ser archivo de salida mientras el
proceso continúa entre F2 con 13 tramos y F3 con 8
55 Tramos
F1 34 13 0
F2 21 0 13
F3 0 21 8
7. Se repite el proceso con 8 tramos, los cuales pasan a F1, dejando así a F3
como salida
8. El proceso se vuelve a repetir hasta que quede un solo tramo
55 Tramos
F1 34 13 0 8
F2 21 0 13 5
F3 0 21 8 0
55 Tramos
F1 34 13 0 8 3
F2 21 0 13 5 0
F3 0 21 8 0 5
55
Tramos
F1 34 13 0 8 3 0
F2 21 0 13 5 0 3
F3 0 21 8 0 5 2
55
Tramos
F1 34 13 0 8 3 0 2
F2 21 0 13 5 0 3 1
F3 0 21 8 0 5 2 0
55
Tramos
F1 34 13 0 8 3 0 2 1
F2 21 0 13 5 0 3 1 0
F3 0 21 8 0 5 2 0 1
55
Tramo
s
F1 34 13 0 8 3 0 2 1 0
F2 21 0 13 5 0 3 1 0 1
F3 0 21 8 0 5 2 0 1 0
Intercalando Mezcla
Balanceado
Mezcla Balanceada
La mezcla equilibrada múltiple utiliza m archivos auxiliares, de los que m/2 son de
entrada y m/2 de salida.
Inicialmente, se distribuyen los tramos del archivo de origen en los m/2 archivos
auxiliares.
A partir de esta distribución, se repiten los procesos de mezcla reduciendo a la mitad el
número de tramos hasta que queda un único tramo.
Características
● Evita el exceso de copiado de registros
● Una intercalación de M-vias usa 2M archivos
● La eficiencia de los métodos de ordenación externa es directamente
proporcional al número de pasadas
● Para un aumento de eficiencia
○ Reducir el número de pasadas, reduciendo de esta forma la cantidad de operaciones de
entrada/salida
○ Incremento del número de archivos auxiliares
Pasos a seguir de la mezcla Balanceada
1. Distribuir registros del archivo original por tramos en los m/2 primeros
archivos auxiliares. A continuación, estos se consideran archivos de
entrada.
2. Mezclar tramos de los m/2 archivos de entrada y escribirlos
consecutivamente en los m/2 archivos de salida.
3. Cambiar la finalidad de los archivos, los de entrada pasan a ser de salida y
viceversa;
4. Se repite a partir del segundo paso hasta que quede un único tramo,
entonces la secuencia está ordenada.
Bibliografía
Joyanes Aguilar L. (2008). Estructura de Datos en Java.Blanca Madrid:
Pecharromán.
Gomez, V., Gomez, V. and perfil, V. (2016). Técnicas de Intercalación. [online]
Victorgh84.blogspot.com. Available at:
http://victorgh84.blogspot.com/2015/09/tecnicas-de-
intercalacion.html?m=1.
Enlace Externo
https://github.com/Erick03Andres/IntercalacionDirecta

Más contenido relacionado

La actualidad más candente

1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx
Fernando Solis
 
3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno
Fernando Solis
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras Lineales
José Antonio Sandoval Acosta
 
Algoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivosAlgoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivos
Daniel Gomez Jaramillo
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de Ordenamiento
José Antonio Sandoval Acosta
 
1.4.1 Representación en memoria estática y dinámica.pptx
1.4.1 Representación en memoria estática y dinámica.pptx1.4.1 Representación en memoria estática y dinámica.pptx
1.4.1 Representación en memoria estática y dinámica.pptx
Fernando Solis
 
Analisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacioAnalisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacio
Adamari Cortes
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
José Antonio Sandoval Acosta
 
5.2.1 Intercalación.pptx
5.2.1 Intercalación.pptx5.2.1 Intercalación.pptx
5.2.1 Intercalación.pptx
AngelGabrielTorresGa
 
Metodos Busqueda Interna
Metodos Busqueda InternaMetodos Busqueda Interna
Metodos Busqueda Internasawmuk
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamiento
José Antonio Sandoval Acosta
 
Dinamica grupal 10 unidad 2
Dinamica grupal 10 unidad 2Dinamica grupal 10 unidad 2
Dinamica grupal 10 unidad 2
ramiro miranda
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda BinariaITCV
 
Colas estáticas. IESIT
Colas estáticas. IESITColas estáticas. IESIT
Colas estáticas. IESIT
Blanca Elia Jiménez Guzmán
 
Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)
Alvaro Enrique Ruano
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
Alvaro Enrique Ruano
 
2.1.4 ShellSort.pptx
2.1.4 ShellSort.pptx2.1.4 ShellSort.pptx
2.1.4 ShellSort.pptx
Fernando Solis
 
Noción de archivo real y virtual
Noción de archivo real y virtual Noción de archivo real y virtual
Noción de archivo real y virtual
Laura Guadalupe Rosado Hernández
 

La actualidad más candente (20)

1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx
 
Ordenamiento parte 2
Ordenamiento parte 2Ordenamiento parte 2
Ordenamiento parte 2
 
3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras Lineales
 
Algoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivosAlgoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivos
 
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de OrdenamientoEstructura de Datos Unidad - V: Métodos de Ordenamiento
Estructura de Datos Unidad - V: Métodos de Ordenamiento
 
1.4.1 Representación en memoria estática y dinámica.pptx
1.4.1 Representación en memoria estática y dinámica.pptx1.4.1 Representación en memoria estática y dinámica.pptx
1.4.1 Representación en memoria estática y dinámica.pptx
 
Analisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacioAnalisis de algoritmos complejidad en tiempo y espacio
Analisis de algoritmos complejidad en tiempo y espacio
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
5.2.1 Intercalación.pptx
5.2.1 Intercalación.pptx5.2.1 Intercalación.pptx
5.2.1 Intercalación.pptx
 
Metodos Busqueda Interna
Metodos Busqueda InternaMetodos Busqueda Interna
Metodos Busqueda Interna
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamiento
 
Dinamica grupal 10 unidad 2
Dinamica grupal 10 unidad 2Dinamica grupal 10 unidad 2
Dinamica grupal 10 unidad 2
 
COLAS
COLASCOLAS
COLAS
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
 
Colas estáticas. IESIT
Colas estáticas. IESITColas estáticas. IESIT
Colas estáticas. IESIT
 
Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)Otras estructuras de datos (heap, tablas hash y diccionarios)
Otras estructuras de datos (heap, tablas hash y diccionarios)
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
2.1.4 ShellSort.pptx
2.1.4 ShellSort.pptx2.1.4 ShellSort.pptx
2.1.4 ShellSort.pptx
 
Noción de archivo real y virtual
Noción de archivo real y virtual Noción de archivo real y virtual
Noción de archivo real y virtual
 

Similar a Ordenamiento de Archivos en Java

Ordenamientos externo
Ordenamientos externoOrdenamientos externo
Ordenamientos externo
Belen Toledo
 
Ordenamientos Externo
Ordenamientos ExternoOrdenamientos Externo
Ordenamientos Externo
Belen Toledo
 
Métodos de ordenación externa
Métodos de ordenación externaMétodos de ordenación externa
Métodos de ordenación externa
Edwin Narváez
 
Ordenamietos externos
Ordenamietos externosOrdenamietos externos
Ordenamietos externos
Jorge Encalada Ulloa
 
Ordenamientos externos
Ordenamientos externosOrdenamientos externos
Ordenamientos externos
Christian Collaguazo Malla
 
Presentacion algoritmos ordenacion externa
Presentacion algoritmos ordenacion externaPresentacion algoritmos ordenacion externa
Presentacion algoritmos ordenacion externa
Christian Salinas
 
Presentación algoritmos ordenación externa
Presentación algoritmos ordenación externaPresentación algoritmos ordenación externa
Presentación algoritmos ordenación externa
Mateo Quizhpi
 
Ordenamientos Externos
Ordenamientos ExternosOrdenamientos Externos
Ordenamientos Externos
Carlos Valladarez
 
Guia2 ac
Guia2 acGuia2 ac
Guia2 ac
Fredy Soncco
 
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdfPLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
EMERSON EDUARDO RODRIGUES
 

Similar a Ordenamiento de Archivos en Java (11)

Ordenamientos externo
Ordenamientos externoOrdenamientos externo
Ordenamientos externo
 
Ordenamientos Externo
Ordenamientos ExternoOrdenamientos Externo
Ordenamientos Externo
 
Métodos de ordenación externa
Métodos de ordenación externaMétodos de ordenación externa
Métodos de ordenación externa
 
Ordenamietos externos
Ordenamietos externosOrdenamietos externos
Ordenamietos externos
 
Ordenamientos externos
Ordenamientos externosOrdenamientos externos
Ordenamientos externos
 
Presentacion algoritmos ordenacion externa
Presentacion algoritmos ordenacion externaPresentacion algoritmos ordenacion externa
Presentacion algoritmos ordenacion externa
 
Presentación algoritmos ordenación externa
Presentación algoritmos ordenación externaPresentación algoritmos ordenación externa
Presentación algoritmos ordenación externa
 
Ordenamientos Externos
Ordenamientos ExternosOrdenamientos Externos
Ordenamientos Externos
 
Guia2 ac
Guia2 acGuia2 ac
Guia2 ac
 
Pipelining
PipeliningPipelining
Pipelining
 
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdfPLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
PLC-II EMERSON EDUARDO RODRIGUES ENGENHEIRO.pdf
 

Último

PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
juanorejuela499
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
cuentauniversidad34
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
juanjosebarreiro704
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
Federico Toledo
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
oscartorres960914
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
lasocharfuelan123
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
Ecaresoft Inc.
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
RobertSotilLujn
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
nicromante2000
 

Último (10)

PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...experiencia de aprendizaje sobre lectura y escritura como  herramientas de ap...
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 
Los desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMsLos desafíos de calidad de software que nos trae la IA y los LLMs
Los desafíos de calidad de software que nos trae la IA y los LLMs
 
infografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de softwareinfografia del sena para analisis y desarrollo de software
infografia del sena para analisis y desarrollo de software
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
trabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docxtrabajo integrador final sofi y vane.docx
trabajo integrador final sofi y vane.docx
 
Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA  DE TRABAJO DE CREACION DE TABLAS EN WORDFICHA  DE TRABAJO DE CREACION DE TABLAS EN WORD
FICHA DE TRABAJO DE CREACION DE TABLAS EN WORD
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 

Ordenamiento de Archivos en Java

  • 1. Ordenamiento de Archivos en Java Estructura de Archivos Integrantes: Erick Barzallo David Buñay Gabriela Verdugo
  • 2. Introducción. En ocasiones cuando se posee gran cantidad de datos que no caben en la memoria interna y se guardan en una memoria externa, es ahí cuando los algoritmos de ordenamiento externo son de gran ayuda y se presentarán a continuación.
  • 4. Mezcla Directa. Es el método más simple de ordenación: Utiliza el el esquema iterativo de separar secuencias de registros y su mezcla. Se opera con el archivo original y dos archivos auxiliares.
  • 5. Funcionamiento. Lista a ordenar: Separar el archivo original en dos archivos f1 y f2 : 34 12 59 73 44 8 19 28 51 f1 23 f2
  • 11. Funcionamiento. Mezclar los archivos f1 y f2 combinando registros aislados (según sus claves) y formando pares ordenados que son escritos en el archivo O. Separar pares de registros del archivo original O en los dos archivos auxiliares f1 y f2. O 23 34 12 59 44 73 8 19 28 51 f1 23 34 44 73 28 51 f2 12 59 8 19
  • 12. Funcionamiento Mezclar los archivos f1 y f2 combinando registros aislados (según sus claves) y formando pares ordenados que son escritos en el archivo O. O 12 23 34 59 8 4419 73 28 51
  • 13. Funcionamiento. Se repiten los pasos de separación y mezcla, combinando cuádruplos para formar óctuplos ordenados. En cada paso de separación y mezcla se duplica el tamaño de las subsecuencias mezcladas, así hasta que la longitud de la subsecuencia sea la que tiene el archivo, y en ese momento el archivo original O está ordenado. Separación de cuádruplos: f1 12 23 34 59 28 51 f2 8 19 44 73
  • 14. Funcionamiento. Mezcla formando óctuplos ordenados: Separación de octuplos: O 8 12 19 23 34 44 59 73 28 51 f1 8 12 19 23 34 44 59 73 f2 28 51
  • 15. Funcionamiento. Mezcla con la que ya se obtiene el archivo ordenado: O 8 12 23 28 34 44 51 59 73 LISTA ORDENADA
  • 17. Mezcla Natural El método de fusión natural mejora el tiempo de ejecución de la mezcla directa al introducir una pequeña variación respecto a la longitud de las secuencias de registros. En el método de mezcla directa, las secuencias de registros tiene longitudes que son múltiplos de dos: 1, 2, 4,8, 16... de tal forma que el número de pasadas a realizar es fijo, dependiente del número de registros. La mezcla directa no tiene en cuenta la circunstancia de que pueda haber, de manera natural, secuencias más largas ya ordenadas que también puedan mezclarse y dar lugar a otra secuencia ordenada.
  • 18. Funcionamiento. Lista a ordenar: Separación: 9 10 3 4 5 25 26 13 14 1 f1 9 10 f2 3 4 25 5 26 1 13 14 2 2
  • 19. Funcionamiento Fusión: Separación: 3 4 5 9 10 13 14 25 26 1 2 f1 3 4 5 9 10 1 2 f2 13 14 25 26
  • 20. Funcionamiento. Fusión: Separación: 3 4 5 9 10 13 14 25 1 2 f1 3 4 5 9 10 13 14 25 26 f2 1 2
  • 21. Funcionamiento. Fusión. 1 2 3 4 5 9 10 13 14 25 26 LISTA ORDENADA
  • 23. Intercalación Polifásica - La idea básica de este método es aplicar una mezcla estratégica hasta vaciar el archivo El método polifásico utiliza m archivos auxiliares para ordenar n registros de un archivo. La característica que marca la diferencia de este método respecto a los otros es que continuamente se consideran m-1 archivos de entrada, desde los que se mezclan registros, y un archivo de salida. En el momento en que uno de los archivos de entrada alcanza su final hay un cambio de cometido, pasa a ser considerado como archivo de salida, y el archivo que en ese momento era de salida pasa a ser de entrada y la mezcla de tramos continúa.
  • 24. Características - Utiliza m archivos auxiliares - Se diferencia del resto de intercalados por la consideración de m-1 archivos - Cuando un archivo de entrada alcanza su final, pasa a ser considerado archivo de salida - Cabe recordar - La mezcla de k tramos de los archivos de entrada se transforman en kntramos en el archivo de salida
  • 25. Fases - Mientras existan datos de entrada en T0, se debe seguir los siguientes pasos: - Fase 1 - Leer m llaves - Ordenar las llaves por método interno - Si las llaves anteriores se colocaron en T2, se procede a colocarlas en T3, caso contrario, colocarlas en T3 - Fase 2 - Intercalar el primer bloque en T2 con el primer bloque de T3
  • 26. Ejemplo con m=3 archivos - Archivo original con 55 tramos - Archivos auxiliares m=3 - 2 archivos de entrada y 1 de salida
  • 27. Proceso 1. Distribuir de forma no uniforme en los archivos F1 con 34 tramos y en F2 con 21 tramos por ejemplo 1. Se realiza la fusión de 21 tramos de F1 con los 21 tramos de F2, dando así lugar a 21 tramos en F3 55 Tramos F1 34 F2 21 F3 0 55 Tramos F1 34 13 F2 21 0 F3 0 21
  • 28. 3. F1 alcanza 13 tramos, F2 queda vacío y F3 consta con 21 tramos 4. F2 pasa a ser archivo de salida mientras que la mezcla continua entre F1 y F3 55 Tramos F1 34 13 F2 21 0 F3 0 21
  • 29. 5. Se repite la mezcla pero con F1 y F3 igual a 13 tramos, los cuales se pasan al F2 6. F1 queda vacío por lo cual pasa a ser archivo de salida mientras el proceso continúa entre F2 con 13 tramos y F3 con 8 55 Tramos F1 34 13 0 F2 21 0 13 F3 0 21 8
  • 30. 7. Se repite el proceso con 8 tramos, los cuales pasan a F1, dejando así a F3 como salida 8. El proceso se vuelve a repetir hasta que quede un solo tramo 55 Tramos F1 34 13 0 8 F2 21 0 13 5 F3 0 21 8 0
  • 31. 55 Tramos F1 34 13 0 8 3 F2 21 0 13 5 0 F3 0 21 8 0 5 55 Tramos F1 34 13 0 8 3 0 F2 21 0 13 5 0 3 F3 0 21 8 0 5 2
  • 32. 55 Tramos F1 34 13 0 8 3 0 2 F2 21 0 13 5 0 3 1 F3 0 21 8 0 5 2 0 55 Tramos F1 34 13 0 8 3 0 2 1 F2 21 0 13 5 0 3 1 0 F3 0 21 8 0 5 2 0 1
  • 33. 55 Tramo s F1 34 13 0 8 3 0 2 1 0 F2 21 0 13 5 0 3 1 0 1 F3 0 21 8 0 5 2 0 1 0
  • 35. Mezcla Balanceada La mezcla equilibrada múltiple utiliza m archivos auxiliares, de los que m/2 son de entrada y m/2 de salida. Inicialmente, se distribuyen los tramos del archivo de origen en los m/2 archivos auxiliares. A partir de esta distribución, se repiten los procesos de mezcla reduciendo a la mitad el número de tramos hasta que queda un único tramo.
  • 36. Características ● Evita el exceso de copiado de registros ● Una intercalación de M-vias usa 2M archivos ● La eficiencia de los métodos de ordenación externa es directamente proporcional al número de pasadas ● Para un aumento de eficiencia ○ Reducir el número de pasadas, reduciendo de esta forma la cantidad de operaciones de entrada/salida ○ Incremento del número de archivos auxiliares
  • 37. Pasos a seguir de la mezcla Balanceada 1. Distribuir registros del archivo original por tramos en los m/2 primeros archivos auxiliares. A continuación, estos se consideran archivos de entrada. 2. Mezclar tramos de los m/2 archivos de entrada y escribirlos consecutivamente en los m/2 archivos de salida. 3. Cambiar la finalidad de los archivos, los de entrada pasan a ser de salida y viceversa; 4. Se repite a partir del segundo paso hasta que quede un único tramo, entonces la secuencia está ordenada.
  • 38. Bibliografía Joyanes Aguilar L. (2008). Estructura de Datos en Java.Blanca Madrid: Pecharromán. Gomez, V., Gomez, V. and perfil, V. (2016). Técnicas de Intercalación. [online] Victorgh84.blogspot.com. Available at: http://victorgh84.blogspot.com/2015/09/tecnicas-de- intercalacion.html?m=1.