Download - Algoritmos intercalación
![Page 1: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/1.jpg)
Universidad De CuencaNombres:
David ValladaresEdisson SiguaPaúl Arévalo
Temas: Ordenamientos Externos
![Page 2: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/2.jpg)
Indice
1.Proyectos en GitHub2.Ordenamiento por intercalación DIRECTA3.Ordenamiento por intercalación NATURAL4.Ordenamiento por intercalación BALANCEADA5.Ordenamiento por intercalación POLIFÁSICA
![Page 3: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/3.jpg)
Proyectos en GitHub
Intercalación Directa y Naturalhttps://github.com/jeims17/IntercalacionDirectaNatural
Intercalación Balanceadahttps://github.com/jeims17/IntercalacionBalanceada
Intercalación Polifásicahttps://github.com/jeims17/IntercalacionPolifasica
![Page 4: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/4.jpg)
ORDENAMIENTO POR INTERCALACIÓN DIRECTA
![Page 5: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/5.jpg)
Ordenamiento por Intercalación Directa
Probablemente es el método de ordenación externa más utilizado por su fácil comprensión.
Su idea central está basada en la estrategia de hacer subdivisiones y fusiones sucesivas de secuencias de tamaño cada vez más grande.
Este proceso se repite hasta que el número de pasadas sea la parte entera de ((n + 1)/2) siendo n el número de registros existentes en el archivo.
![Page 6: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/6.jpg)
Ejemplo
F:
F1:
F2:
09 75 0568 012514
![Page 7: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/7.jpg)
Ejemplo
F:
F1:
F2:
75 0568 012514
09´
![Page 8: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/8.jpg)
Ejemplo
F:
F1:
F2:
0568 012514
09´
75´
![Page 9: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/9.jpg)
Ejemplo
F:
F1:
F2:
05 012514
09´ 68´
75´
![Page 10: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/10.jpg)
Ejemplo
F:
F1:
F2:
05 0125
09´ 68´
75´ 14´
![Page 11: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/11.jpg)
Ejemplo
F:
F1:
F2:
05 01
09´ 68´ 25´
75´ 14´
![Page 12: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/12.jpg)
Ejemplo
F:
F1:
F2:
01
09´ 68´ 25´
75´ 14´ 05´
![Page 13: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/13.jpg)
Ejemplo
F:
F1:
F2:
09´ 68´ 25´ 01´
75´ 14´ 05´
![Page 14: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/14.jpg)
Ejemplo
F:
F1:
F2:
09 75´
68´ 25´ 01´
14´ 05´
![Page 15: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/15.jpg)
Ejemplo
F:
F1:
F2:
09 75´ 14 68´
25´ 01´
05´
![Page 16: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/16.jpg)
Ejemplo
F:
F1:
F2:
09 75´ 25´14 0568´
01´
![Page 17: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/17.jpg)
Ejemplo
F:
F1:
F2:
09 75´ 25´14 01´0568´
![Page 18: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/18.jpg)
Ejemplo
F:
F1:
F2:
25´14 01´0568´
09 75´
![Page 19: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/19.jpg)
Ejemplo
F:
F1:
F2:
25´ 01´05
09 75´
14 68´
![Page 20: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/20.jpg)
Ejemplo
F:
F1:
F2:
01´
09 75´ 05 25´
14 68´
![Page 21: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/21.jpg)
Ejemplo
F:
F1:
F2:
09 75´ 05 25´
14 68´ 01´
![Page 22: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/22.jpg)
Ejemplo
F:
F1:
F2:
09 14 68 75´
05 25´
01´
![Page 23: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/23.jpg)
Ejemplo
F:
F1:
F2:
09 14 0568 25´0175´
![Page 24: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/24.jpg)
Ejemplo
F:
F1:
F2:
05 25´01
09 14 68 75´
![Page 25: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/25.jpg)
Ejemplo
F:
F1:
F2:
09 14 68 75´
01 05 25´
![Page 26: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/26.jpg)
Ejemplo
F:
F1:
F2:
01 05 6809 75´2514
![Page 27: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/27.jpg)
Archivos utilizados
![Page 28: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/28.jpg)
Código
![Page 29: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/29.jpg)
ORDENAMIENTO POR INTERCALACIÓN NATURAL
![Page 30: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/30.jpg)
Ordenamiento por Intercalación Natural
Este ordenamiento es una optimización del algoritmo de intercalación directa.
La idea central de este ordenamiento consiste en realizar las particiones tomando secuencias ordenadas de tamaño máximo en lugar de secuencias fijas. Luego se fusiona estas particiones en el archivo original.
Este ordenamiento se realiza hasta que uno de los archivos de las particiones queda vacío.
![Page 31: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/31.jpg)
Ejemplo
F:
F1:
F2:
09 15 3064 011520
![Page 32: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/32.jpg)
Ejemplo
F:
F1:
F2:
30 011520
09 15 64
![Page 33: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/33.jpg)
Ejemplo
F:
F1:
F2:
30 0115
09 15 64´
20´
![Page 34: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/34.jpg)
Ejemplo
F:
F1:
F2:
01
09 15 64´ 30´15
20´
![Page 35: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/35.jpg)
Ejemplo
F:
F1:
F2:
09 15 64´ 30´15
20´ 01´
![Page 36: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/36.jpg)
Ejemplo
F:
F1:
F2:
09 15 20 64´
30´15
01´
![Page 37: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/37.jpg)
Ejemplo
F:
F1:
F2:
09 15 1520 30´0164´
![Page 38: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/38.jpg)
Ejemplo
F:
F1:
F2:
15 30´01
09 15 20 64´
![Page 39: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/39.jpg)
Ejemplo
F:
F1:
F2:
09 15 20 64´
01 15 30´
![Page 40: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/40.jpg)
Ejemplo
F:
F1:
F2:
01 09 3015 64´2015
![Page 41: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/41.jpg)
Ejemplo
F:
F1:
F2:
01 09 3015 64´2015
![Page 42: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/42.jpg)
Archivos utilizados
![Page 43: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/43.jpg)
Código
![Page 44: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/44.jpg)
ORDENAMIENTO POR INTERCALACIÓN BALANCEADA
![Page 45: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/45.jpg)
Método de Intercalación Balanceada
Realizar particiones tomando secuencias ordenadas de máxima longitud en lugar de secuencias ordenadas de tamaño fijo previamente determinadas.
La mezcla equilibrada múltiple utiliza m archivos auxiliares, de los que m/2 son de entrada y m/2 de salida.
El proceso de mezcla se realiza en una sola fase en lugar de las dos fases (separación, fusión) de los algoritmos mezcla directa y fusión natural.
![Page 46: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/46.jpg)
Pasos
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; repetir a partir del segundo paso hasta que quede un único tramo, entonces la secuencia está ordenada.
![Page 47: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/47.jpg)
Ejemplo
15 3 187 18919 9 7 1
3 7 19
15
9 18 18
![Page 48: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/48.jpg)
Ejemplo
9 7 1
3 7 19
15 9
9 18 18
7
1
![Page 49: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/49.jpg)
1 7 9
3 7 189 191815
3 7 19
15 9
9 18 18
7
1
Inactivo
InactivoInactivo
![Page 50: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/50.jpg)
1 7 9
3 7 189 191815
1 3 97 159 18 18 197
![Page 51: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/51.jpg)
Archivos Utilizados
![Page 52: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/52.jpg)
Interfaz de código
![Page 53: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/53.jpg)
Interfaz de código
![Page 54: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/54.jpg)
Interfaz de código
![Page 55: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/55.jpg)
ORDENAMIENTO POR INTERCALACIÓN POLIFÁSICA
![Page 56: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/56.jpg)
Método Ordenamiento Polifásico
En este método podemos ordenar “n” registros en m archivos auxiliares
m-1 Archivos de entrada
1 Archivo de Salida
Archivos de Entrada: Los archivos de entrada son aquellos que contendrán la información para realizar el ordenamiento
Archivos de Salida: Los archivos de Salida son aquellos en donde se guardarán los registros.
![Page 57: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/57.jpg)
Ejemplo de Mezcla Polifásica
Datos EsencialesNúmero de Archivos Auxiliares : 3 ---> m
2 Archivos de Entrada ---> m - 1
1 Archivo de Salida ---> RestanteSalida Salida Entrada
![Page 58: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/58.jpg)
Proceso 1 Distribución de los Registros
El primer paso para realizar el ordenamiento es la de distribución de los registros del “ArchivoOriginal” a los archivos auxiliares que posteriormente entrada.
Con ello conseguimos 2 objetivosEl distribuir los registros del “ArchivoOriginal” a los archivos auxiliares que
posteriormente serán de entrada, de forma no uniforme
Obtener el número de tramos para realizar el ordenamiento.
Para este ejemplo en concreto supongamos que el número de Tramos sea 55
![Page 59: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/59.jpg)
Paso 2 Proceso34 21
0
Archivos de Entrada
Archivos de Salida
13 0
21
Archivos de Entrada
Archivos de Salida
![Page 60: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/60.jpg)
Proceso13 21
0
Archivos de Entrada
Archivos de Salida
0 8
13
Archivos de Entrada
Archivos de Salida
![Page 61: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/61.jpg)
Proceso13 8
0
Archivos de Entrada
Archivos de Salida
5 0
8
Archivos de Entrada
Archivos de Salida
![Page 62: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/62.jpg)
Proceso5 8
0
Archivos de Entrada
Archivos de Salida
0 3
5
Archivos de Entrada
Archivos de Salida
![Page 63: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/63.jpg)
Proceso5 3
0
Archivos de Entrada
Archivos de Salida
2 0
3
Archivos de Entrada
Archivos de Salida
![Page 64: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/64.jpg)
Proceso2 3
0
Archivos de Entrada
Archivos de Salida
0 1
2
Archivos de Entrada
Archivos de Salida
![Page 65: Algoritmos intercalación](https://reader035.vdocuments.us/reader035/viewer/2022081605/58ef78fd1a28ab2f338b45c7/html5/thumbnails/65.jpg)
Proceso2 1
0
Archivos de Entrada
Archivos de Salida
1 0
1
Archivos de Entrada
Archivos de Salida