Está en la página 1de 90

Resolucion Teorica Oficial de la Evaluacion Integradora tomada

el 7 de Julio de 2014
Enrique P. Calot*
Catedra de Algoritmos y Programacion II
Facultad de Ingeniera
Universidad de Buenos Aires
2014-07-07

* ecalot@fi.uba.ar


INDICE

Indice
1. Enunciado
2. Resoluci
on estricta
2.1. a. Radix Sort . . . . . . . . . . . . . . . . . .
2.1.1. Desarrollo . . . . . . . . . . . . . . . .
2.2. a. Quick Sort . . . . . . . . . . . . . . . . . .
2.2.1. Desarrollo . . . . . . . . . . . . . . . .
2.3. a. Heap Sort . . . . . . . . . . . . . . . . . . .

2.3.1. Arbol
inicial . . . . . . . . . . . . . .
2.4. b. Ejercicio de B-trees . . . . . . . . . . . . .
2.4.1. Inserci
on . . . . . . . . . . . . . . . .
2.4.2. Eliminacion . . . . . . . . . . . . . . .
2.5. c. Seleccion de reemplazo . . . . . . . . . . .
2.5.1. Desarrollo . . . . . . . . . . . . . . . .
2.5.2. Salida final . . . . . . . . . . . . . . .
2.6. d. Pregunta teorica . . . . . . . . . . . . . . .
2.6.1. Respuesta . . . . . . . . . . . . . . . .
2.7. e. Merge Polif
asico . . . . . . . . . . . . . . .
2.7.1. C
alculo de la distribuci
on de columnas
2.7.2. Distribucion inicial . . . . . . . . . . .

5
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

6
6
6
7
7
7
7
10
10
11
11
11
12
12
12
12
13
13

3. Resoluci
on explayada
3.1. Radix Sort descendente . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Quick Sort completo . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Heap Sort completo . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3.1. Arbol
inicial . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4. Heap Sort descendente . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.1. Arbol
inicial . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5. Merge Polif
asico de las salidas por seleccion de reemplazo . . . . .
3.5.1. C
alculo de la distribuci
on de columnas y dummies . . . . .
3.5.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . .
3.6. Merge Polif
asico de las particiones marcadas . . . . . . . . . . . . .
3.6.1. C
alculo de la distribuci
on de columnas y dummies . . . . .
3.6.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . .
3.7. Merge Polif
asico completo con particiones formadas de 1 elemento
3.7.1. C
alculo de la distribuci
on de columnas y dummies . . . . .
3.7.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . .
3.8. Merge Polif
asico con particiones formadas de 2 elementos . . . . .
3.8.1. C
alculo de la distribuci
on de columnas y dummies . . . . .
3.8.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . .
3.9. Merge Polif
asico con particiones formadas de 3 elementos . . . . .
3.9.1. C
alculo de la distribuci
on de columnas y dummies . . . . .
3.9.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . .
3.10. Merge Polif
asico con particiones formadas de 4 elementos . . . . .
3.10.1. C
alculo de la distribuci
on de columnas y dummies . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

13
15
15
15
16
16
16
32
32
47
47
48
48
48
48
48
50
50
50
50
52
52
52
52
57
57

Enrique P. Calot

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
y
.

. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
dummies
. . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

n II
Algoritmos y Programacio


INDICE

3.10.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


3.11. Seleccion de reemplazo con buffer de tama
no 2 . . . . . . . . . . . . . . . . .
3.11.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.11.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.12. Merge Polif
asico de las salidas por seleccion de reemplazo de buffer tama
no 2
3.12.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.12.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.13. Seleccion Natural con buffers de tama
no 2 . . . . . . . . . . . . . . . . . . . .
3.13.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.13.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.14. Merge Polif
asico de las salidas por seleccion natural de buffers tama
no 2 . . .
3.14.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.14.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.15. Seleccion de reemplazo con buffer de tama
no 3 . . . . . . . . . . . . . . . . .
3.15.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.15.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.16. Merge Polif
asico de las salidas por seleccion de reemplazo de buffer tama
no 3
3.16.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.16.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.17. Seleccion Natural con buffers de tama
no 3 . . . . . . . . . . . . . . . . . . . .
3.17.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.17.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.18. Merge Polif
asico de las salidas por seleccion natural de buffers tama
no 3 . . .
3.18.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.18.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.19. Seleccion Natural con buffers de tama
no 4 . . . . . . . . . . . . . . . . . . . .
3.19.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.19.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.20. Merge Polif
asico de las salidas por seleccion natural de buffers tama
no 4 . . .
3.20.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.20.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.21. Seleccion de reemplazo con buffer de tama
no 5 . . . . . . . . . . . . . . . . .
3.21.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.21.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.22. Merge Polif
asico de las salidas por seleccion de reemplazo de buffer tama
no 5
3.22.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.22.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.23. Seleccion Natural con buffers de tama
no 5 . . . . . . . . . . . . . . . . . . . .
3.23.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.23.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.24. Merge Polif
asico de las salidas por seleccion natural de buffers tama
no 5 . . .
3.24.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.24.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.25. Seleccion de reemplazo con buffer de tama
no 6 . . . . . . . . . . . . . . . . .
3.25.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.25.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.26. Merge Polif
asico de las salidas por seleccion de reemplazo de buffer tama
no 6
3.26.1. C
alculo de la distribuci
on de columnas y dummies . . . . . . . . . . .
3.26.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
n II
Algoritmos y Programacio

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

57
57
57
63
63
64
64
64
66
66
67
67
67
69
69
69
69
70
70
70
70
72
72
72
73
73
73
75
75
75
75
75
75
76
77
77
77
77
77
79
79
79
79
79
79
80
81
81
81

Facultad de Ingeniera


INDICE

3.27. Seleccion Natural con buffers de tama


no 6 . . . . . . . . . . .
3.27.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.27.2. Salida final . . . . . . . . . . . . . . . . . . . . . . . .
3.28. Merge Polif
asico de las salidas por seleccion natural de buffers
3.28.1. C
alculo de la distribuci
on de columnas y dummies . .
3.28.2. Distribucion inicial . . . . . . . . . . . . . . . . . . . .
3.29. Bubble Sort ascendente . . . . . . . . . . . . . . . . . . . . .
3.29.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.30. Bubble Sort descendente . . . . . . . . . . . . . . . . . . . . .
3.30.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.31. Bilateral Bubble Sort ascendente . . . . . . . . . . . . . . . .
3.31.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.32. Bilateral Bubble Sort descendente . . . . . . . . . . . . . . .
3.32.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.33. Selection Sort ascendente . . . . . . . . . . . . . . . . . . . .
3.33.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .
3.34. Selection Sort descendente . . . . . . . . . . . . . . . . . . . .
3.34.1. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . .

Enrique P. Calot

. . . . . .
. . . . . .
. . . . . .
tama
no 6
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

81
81
82
83
83
83
84
84
85
85
86
86
87
87
88
88
89
89

n II
Algoritmos y Programacio

1 Enunciado

1.

Enunciado
Dado el siguiente lote de datos:
272, 175, 399, 294, 77 , 82, 117, 386 , 89 , 398, 304 , 203, 66, 80, 201,
198 , 187, 125 , 247, 159, 310
Se pide:

a. Desarrollar los algoritmos de Quick Sort (hacer al menos 2 niveles de recursividad), Heap Sort en
orden ascendente (hacer al menos 1 swapdown) y Radix Sort en orden ascendente (entero).
b. Procesar el B-tree de m = 2 resultante de ingresar los elementos del lote en el orden dado y luego
eliminar los siguientes:
201, 198 , 247
Mostrar los resultados parciales tras insertar o eliminar un elemento marcado con .
c. Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama
no 4.
d. Un software recibe como entrada un arreglo completo semi-ordenado de p elementos de tipo tElem,
se sabe que s
olo hay tres elementos fuera de su lugar (no se sabe cu
ales), el software es ejecutado en
una maquina con una memoria interna comparable a 2p2 sizeof (tElem). Dispone de las siguientes
soluciones:
a) Sort externo: seleccion de reemplazo (se asume M 3) y merge polif
asico
b) Sort externo: seleccion natural (se asume M 3) y merge polif
asico
c) Sort externo: quick sort de pivoteo en el primer elemento sobre particiones de
merge polif
asico

p
2

elementos y

d ) Sort interno: quick sort de pivoteo en el primer elemento


e) Sort interno: quick sort de pivoteo en el u
ltimo elemento
f ) Sort interno: bubble sort bilateral (recorre en ambos sentidos y tiene un flag para cortar si no
hay intercambios)
g) Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el
padre es mayor a los hijos)
h) Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el
padre es menor a los hijos)
i ) Sort interno: selection sort
cu
al de todas implementara? Justifique su elecci
on.
e. Desarrollar 2 fases del algoritmo de merge polif
asico para 3 vas de entrada con 21 particiones
ordenadas tomadas del lote de datos.
n II
Algoritmos y Programacio

Facultad de Ingeniera

2 Resoluci
on estricta

2.

Resoluci
on estricta

El objetivo de este apunte es resolver los ejercicios para proveer al alumno de una explicacion conceptual sobre como funcionan los algoritmos. Se recomienda no mecanizar las respuestas si no se entiende
su funcionamiento, ya que en ciertos casos particulares existen excepciones a la regla, es por esto que si
bien se presentan estos ejemplo no es para que se responda el examen por analoga, sino para permitirle
al alumno inducir las reglas con las cuales los algoritmos se manejan.
Las resoluciones presentadas a continuacion est
an desarrolladas a modo de explicacion y sin escatimar
espacio ni tiempo de escritura, en los ex
amenes, las respuestas pueden ser mas sinteticas, evitando escribir
muchas veces un
arbol o las tablas enteras de Quick Sort, seleccion natural o de reemplazo por ejemplo.
Cada algoritmo tiene su metodo de abreviaci
on, pero escapa de los alcances de este apunte explicarlos.
Es por esta raz
on que este resuelto tiene una extensi
on mucho mayor que la que puede llegar a tener una
respuesta de examen.
La resoluci
on estricta es una explicacion del algoritmo cortando en los puntos donde el enunciado lo
explicita. En casos de dudas, mas adelante se encuentra la resoluci
on explayada, que continua algunos
ejercicios por mas de lo especificado en el enunciado y resuelve otros algoritmos similares con el mismo
lote de datos para permitir al alumno efectuar comparaciones.

2.1.

a. Radix Sort

Desarrollar el algoritmo de Radix Sort en orden ascendente (entero).


2.1.1.

Desarrollo

A continuacion se presenta el desarrollo del Radix Sort en orden Ascendente.


Paso 0
272
175
399
294
077
082
117
386
089
398
304
203
066
080
201
198
187
125
247
159
310
Enrique P. Calot

Paso 1
080
310
201
272
082
203
294
304
175
125
386
066
077
117
187
247
398
198
399
089
159

Paso 2
201
203
304
310
117
125
247
159
066
272
175
077
080
082
386
187
089
294
398
198
399

Paso 3
066
077
080
082
089
117
125
159
175
187
198
201
203
247
272
294
304
310
386
398
399
n II
Algoritmos y Programacio

2.2

a. Quick Sort

2.2.

a. Quick Sort

Desarrollar el algoritmo de Quick Sort (hacer al menos 2 niveles de recursividad).

2.2.1.

Desarrollo

Paso 1

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

Paso 2

201 175 159 247 77 82 117 125 89 187 198 203 66 80 272 304 398 386 294 399 310

Paso 3

66 175 159 80 77 82 117 125 89 187 198 201 203 247

Final

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

2.3.

294 304 386 398 399 310

a. Heap Sort

Desarrollar el algoritmo de Heap Sort en orden ascendente (hacer al menos 1 swapdown).

2.3.1.

Arbol
inicial

272
175
294
386

399
77

89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

Arbol
inicial y su vector asociado
Heapfy paso 0
n II
Algoritmos y Programacio

Facultad de Ingeniera

2.3

a. Heap Sort

272
175

399

294
386

77
89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310
Heapfy paso 1
272
175
294
386

399
77

247

398

82

117

304 203 66 80 201

198 187 125 89 159 310


Vector:
272 175 399 294 77 82 117 386 247 398 304 203 66 80 201 198 187 125 89 159 310
Heapfy paso 2
272
175
386
294

399
398

247

310

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
272 175 399 386 398 203 201 294 247 310 304 82 66 80 117 198 187 125 89 159 77
Heapfy paso 3
Enrique P. Calot

n II
Algoritmos y Programacio

2.3

a. Heap Sort

272
398

399

386
294

310
247

175

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
272 398 399 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 77
Heapfy paso 4
399
398

272

386
294

310
247

175

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
399 398 272 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 77

77
398

272

386
294

310
247

175

203

201

304 82 66 80 117

198 187 125 89 159 399


Vector:
77 398 272 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 399
Paso 1: u
ltimo congelado pedido antes del corte

n II
Algoritmos y Programacio

Facultad de Ingeniera

10

2.4

2.4.

b. Ejercicio de B-trees

b. Ejercicio de B-trees

Procesar el B-tree de m = 2 resultante de ingresar los elementos del lote en el orden dado y luego
eliminar los siguientes:
201, 198 , 247
Mostrar los resultados parciales tras insertar o eliminar un elemento marcado con .

2.4.1.

Inserci
on
272
77175

294399

Inserci
on de 5 elementos: 272, 175, 399, 294, 77
272
7782117175

294386399

Inserci
on de 3 elementos: 82, 117, 386
89272
7782

117175

294386399

Inserci
on de 1 elemento: 89
89272386
7782

117175 294304 398399

Inserci
on de 2 elementos: 398, 304
89198272386
66778082

117175 201203 294304 398399

Inserci
on de 5 elementos: 203, 66, 80, 201, 198
89198272386
66778082

117125175187

201203 294304 398399

Inserci
on de 2 elementos: 187, 125
198
89159
66778082

117125 175187

272386
201203247

294304310

398399

Inserci
on de 3 elementos: 247, 159, 310

Enrique P. Calot

n II
Algoritmos y Programacio

2.5

c. Selecci
on de reemplazo

2.4.2.

11

Eliminaci
on
89159272386
66778082

117125

175187203247

294304310

398399

Eliminacion de 2 elementos: 201, 198


89159272386
66778082

117125

175187203

294304310

398399

Eliminacion de 1 elemento: 247

2.5.

c. Selecci
on de reemplazo

Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama


no 4.
2.5.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion de reemplazo para particionar el


lote de datos dado.
b2
b3
b4
Sale
Entra

Nada
272

Nada
175
175

Nada
399
175
399

Nada
294
175
399
294
175
77
77
399
294
272
82
77
399
294
294
117
77
399
117
399
386
77
386
117
partici
on! Se cierra la partici
on p1 = {175, 272, 294, 399}
77
89
82
89
386
117
82
398
398
89
386
117
89
304
398
304
386
117
117
203
398
304
386
203
203
66
398
304
386
66
304
80
398
80
386
66
386
201
398
80
201
66
398
198
198
80
201
66
Nueva
partici
on!
Se
cierra
la
partici
on
p2
{77, 82, 89, 117, 203, 304, 386, 398}
66
187
198
80
201
187
80
125
198
125
201
187
125
247
198
247
201
187
187
159
198
247
201
159
198
310
310
247
201
159
201
Nada
310
247

159
247
Nada
310

159
310
Nada

159
Nueva
partici
on!
Se
cierra
la
partici
on
p3
{66, 80, 125, 187, 198, 201, 247, 310}
159
Nada
Finaliza la u
ltima partici
on en p4 = {159}
b1

272
272
272
272
272
82
82
82
Nueva

n II
Algoritmos y Programacio

Facultad de Ingeniera

12

2.6

2.5.2.

d. Pregunta te
orica

Salida final

p1 = {175, 272, 294, 399};


p2 = {77, 82, 89, 117, 203, 304, 386, 398};
p3 = {66, 80, 125, 187, 198, 201, 247, 310};
p4 = {159}.

2.6.

d. Pregunta te
orica

Un software recibe como entrada un arreglo completo semi-ordenado de p elementos de tipo tElem,
se sabe que s
olo hay tres elementos fuera de su lugar (no se sabe cu
ales), el software es ejecutado en
una maquina con una memoria interna comparable a 2p2 sizeof (tElem). Dispone de las siguientes
soluciones:
a. Sort externo: seleccion de reemplazo (se asume M 3) y merge polif
asico
b. Sort externo: seleccion natural (se asume M 3) y merge polif
asico
c. Sort externo: quick sort de pivoteo en el primer elemento sobre particiones de
polif
asico

p
2

elementos y merge

d. Sort interno: quick sort de pivoteo en el primer elemento


e. Sort interno: quick sort de pivoteo en el u
ltimo elemento
f. Sort interno: bubble sort bilateral (recorre en ambos sentidos y tiene un flag para cortar si no hay
intercambios)
g. Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el padre
es mayor a los hijos)
h. Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el padre
es menor a los hijos)
i. Sort interno: selection sort
cu
al de todas implementara? Justifique su elecci
on.
2.6.1.

Respuesta

La mejor soluci
on es bubble sort, porque en como maximo 3 recorridas (3p comparaciones) se garantiza
el ordenamiento (del orden de O(p)), el sort externo queda descartado porque es menos optimo y el interno
se puede utilizar (la informacion entra en la memoria interna y se encuentra disponible), selection sort se
descarta por ser de orden O(p2 ) (incluso si el arreglo est
a semi-ordenado), heap sort es de orden O(p log p)
y ambas implementaciones de quick sort resultan ineficientes para un arreglo semi-ordenado (en este caso
seran casi de orden O(p2 )).

2.7.

e. Merge Polif
asico

Desarrollar 2 fases del algoritmo de merge polif


asico para 3 vas de entrada con 21 particiones ordenadas tomadas del lote de datos.
Enrique P. Calot

n II
Algoritmos y Programacio

3 Resoluci
on explayada

13

Fases
0
1
2
3
4
5

c1
1
1
2
4
7
13

c2
0
1
2
3
6
11

c3
0
1
1
2
4
7

P3

i=1 ci

1
3
5
9
17
31

< 21
Si
Si
Si
Si
Si
No

Cuadro 1: Calculo de la distribuci


on de columnas y dummies
E1
D
D
D
D
399
82
89
203
80
198
125
159
310

E2
D
D
D
272
294
117
398
66
201
187
247

E3
D
D
D
175
77
386
304

Cuadro 2: Fase 1
2.7.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.

2.7.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 31 = 13 + 11 + 7 = 21 + 10. Por lo tanto es necesario repartir 31 particiones
de las cuales 10 son dummies (particiones vacas) y 21 son mis particiones de entrada.

3.

Resoluci
on explayada

Esta seccion tiene como objetivo complementar los ejercicios mostrando las resoluciones completas
a los enunciados y agregar los faltantes utilizando el mismo lote de datos. De esta forma el alumno
podra comparar algoritmos.
n II
Algoritmos y Programacio

Facultad de Ingeniera

14

3 Resoluci
on explayada

E1
D
D
D
D
399
82
89
E1
203
80
198
125
159
310

E2
D
D
D
272
294
117
398
E2
66
201
187
247

E3
D
D
D
175
77
386
304
S

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398

Cuadro 3: Fase 2

E1
D
D
D
D
399
82
89
E1
203
80
198
125
E1
159
310

E2
D
D
D
272
294
117
398
E2
66
201
187
247
S

E3
D
D
D
175
77
386
304
S
66, 203
80, 201
187, 198
125, 175, 247, 272
E2
66, 203
80, 201
187, 198
125, 175, 247, 272

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
E3
77, 294, 399
82, 117, 386
89, 304, 398

Cuadro 4: Fase 3

Enrique P. Calot

n II
Algoritmos y Programacio

3.1

Radix Sort descendente

3.1.

15

Radix Sort descendente

Desarrollar el algoritmo de Radix Sort en orden descendente (entero).

3.1.1.

Desarrollo

A continuacion se presenta el desarrollo del Radix Sort en orden Descendente.

Paso 0
272
175
399
294
077
082
117
386
089
398
304
203
066
080
201
198
187
125
247
159
310

3.2.

Paso 1
399
089
159
398
198
077
117
187
247
386
066
175
125
294
304
203
272
082
201
080
310

Paso 2
399
398
198
294
089
187
386
082
080
077
175
272
066
159
247
125
117
310
304
203
201

Paso 3
399
398
386
310
304
294
272
247
203
201
198
187
175
159
125
117
089
082
080
077
066

Quick Sort completo

Desarrollar el algoritmo de Quick Sort (entero).


n II
Algoritmos y Programacio

Facultad de Ingeniera

16

3.3

3.2.1.

Desarrollo

Paso 1

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

Paso 2

201 175 159 247 77 82 117 125 89 187 198 203 66 80 272 304 398 386 294 399 310

Paso 3

66 175 159 80 77 82 117 125 89 187 198 201 203 247

Paso 4

66 175 159 80 77 82 117 125 89 187 198

Paso 5

89 159 80 77 82 117 125 175 187 198

Paso 6

77 82 80 89 159 117 125

Paso 7

77 82 80

Final

3.3.

Heap Sort completo

294 304 386 398 399 310

203 247

310 386 399 398


398 399

187 198

125 117 159

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

Heap Sort completo

Desarrollar el algoritmo de Heap Sort en orden ascendente (entero).

3.3.1.

Arbol
inicial

272
175
294
386

399
77

89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

Arbol
inicial y su vector asociado
Heapfy paso 0
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

17

272
175

399

294

77

386

89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310
Heapfy paso 1
272
175
294
386

399
77

247

398

82

117

304 203 66 80 201

198 187 125 89 159 310


Vector:
272 175 399 294 77 82 117 386 247 398 304 203 66 80 201 198 187 125 89 159 310
Heapfy paso 2
272
175
386
294

399
398

247

310

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
272 175 399 386 398 203 201 294 247 310 304 82 66 80 117 198 187 125 89 159 77
Heapfy paso 3
n II
Algoritmos y Programacio

Facultad de Ingeniera

18

3.3

Heap Sort completo

272
398
386
294

399
310

247

175

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
272 398 399 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 77
Heapfy paso 4
399
398
386
294

272
310

247

175

203

201

304 82 66 80 117

198 187 125 89 159 77


Vector:
399 398 272 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 77
Intercambio y congelamiento
77
398
386
294

272
310

247

175

203

201

304 82 66 80 117

198 187 125 89 159 399


Vector:
77 398 272 386 310 203 201 294 247 175 304 82 66 80 117 198 187 125 89 159 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

19

398
386
294
198

272
310

247

175

203

201

304 82 66 80 117

77 187 125 89 159 399


Vector:
398 386 272 294 310 203 201 198 247 175 304 82 66 80 117 77 187 125 89 159 399
Intercambio y congelamiento
159
386
294
198

272
310

247

175

203

201

304 82 66 80 117

77 187 125 89 398 399


Vector:
159 386 272 294 310 203 201 198 247 175 304 82 66 80 117 77 187 125 89 398 399
Swapdown
386
310
294
198

272
304

247

175

203

201

159 82 66 80 117

77 187 125 89 398 399


Vector:
386 310 272 294 304 203 201 198 247 175 159 82 66 80 117 77 187 125 89 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

20

3.3

Heap Sort completo

89
310
294
198

272
304

247

175

203

201

159 82 66 80 117

77 187 125 386 398 399


Vector:
89 310 272 294 304 203 201 198 247 175 159 82 66 80 117 77 187 125 386 398 399
Swapdown
310
304
294
198

272
175

247

89

203

201

159 82 66 80 117

77 187 125 386 398 399


Vector:
310 304 272 294 175 203 201 198 247 89 159 82 66 80 117 77 187 125 386 398 399
Intercambio y congelamiento
125
304
294
198

272
175

247

89

203

201

159 82 66 80 117

77 187 310 386 398 399


Vector:
125 304 272 294 175 203 201 198 247 89 159 82 66 80 117 77 187 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

21

304
294
247
198

272
175

125

89

203

201

159 82 66 80 117

77 187 310 386 398 399


Vector:
304 294 272 247 175 203 201 198 125 89 159 82 66 80 117 77 187 310 386 398 399
Intercambio y congelamiento
187
294
247
198

272
175

125

89

203

201

159 82 66 80 117

77 304 310 386 398 399


Vector:
187 294 272 247 175 203 201 198 125 89 159 82 66 80 117 77 304 310 386 398 399
Swapdown
294
247
198
187

272
175

125

89

203

201

159 82 66 80 117

77 304 310 386 398 399


Vector:
294 247 272 198 175 203 201 187 125 89 159 82 66 80 117 77 304 310 386 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

22

3.3

Heap Sort completo

77
247
198
187

272
175

125

89

203

201

159 82 66 80 117

294 304 310 386 398 399


Vector:
77 247 272 198 175 203 201 187 125 89 159 82 66 80 117 294 304 310 386 398 399
Swapdown
272
247
198
187

203
175

125

89

82

201

159 77 66 80 117

294 304 310 386 398 399


Vector:
272 247 203 198 175 82 201 187 125 89 159 77 66 80 117 294 304 310 386 398 399
Intercambio y congelamiento
117
247
198
187

203
175

125

89

82

201

159 77 66 80 272

294 304 310 386 398 399


Vector:
117 247 203 198 175 82 201 187 125 89 159 77 66 80 272 294 304 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

23

247
198

203

187

175

117

125

89

82

201

159 77 66 80 272

294 304 310 386 398 399


Vector:
247 198 203 187 175 82 201 117 125 89 159 77 66 80 272 294 304 310 386 398 399
Intercambio y congelamiento
80
198
187
117

203
175

125

89

82

201

159 77 66 247 272

294 304 310 386 398 399


Vector:
80 198 203 187 175 82 201 117 125 89 159 77 66 247 272 294 304 310 386 398 399
Swapdown
203
198
187
117

201
175

125

89

82

80

159 77 66 247 272

294 304 310 386 398 399


Vector:
203 198 201 187 175 82 80 117 125 89 159 77 66 247 272 294 304 310 386 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

24

3.3

Heap Sort completo

66
198

201

187
117

175
125

89

82

80

159 77 203 247 272

294 304 310 386 398 399


Vector:
66 198 201 187 175 82 80 117 125 89 159 77 203 247 272 294 304 310 386 398 399
Swapdown
201
198

82

187
117

175
125

89

77

80

159 66 203 247 272

294 304 310 386 398 399


Vector:
201 198 82 187 175 77 80 117 125 89 159 66 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
66
198
187
117

82
175

125

89

77

80

159 201 203 247 272

294 304 310 386 398 399


Vector:
66 198 82 187 175 77 80 117 125 89 159 201 203 247 272 294 304 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

25

198
187
125
117

82
175

66

89

77

80

159 201 203 247 272

294 304 310 386 398 399


Vector:
198 187 82 125 175 77 80 117 66 89 159 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
159
187
125
117

82
175

66

89

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
159 187 82 125 175 77 80 117 66 89 198 201 203 247 272 294 304 310 386 398 399
Swapdown
187
175
125
117

82
159

66

89

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
187 175 82 125 159 77 80 117 66 89 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

26

3.3

Heap Sort completo

89
175
125
117

82
159

66

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
89 175 82 125 159 77 80 117 66 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
175
159
125
117

82
89

66

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
175 159 82 125 89 77 80 117 66 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
66
159
125
117

82
89

175

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
66 159 82 125 89 77 80 117 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

27

159
125
117
66

82
89

175

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
159 125 82 117 89 77 80 66 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
66
125
117
159

82
89

175

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
66 125 82 117 89 77 80 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
125
117
66
159

82
89

175

187

77

80

198 201 203 247 272

294 304 310 386 398 399


Vector:
125 117 82 66 89 77 80 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

28

3.3

Heap Sort completo

80
117
66
159

82
89

175

187

77

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
80 117 82 66 89 77 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
117
89
66
159

82
80

175

187

77

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
117 89 82 66 80 77 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
77
89
66
159

82
80

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
77 89 82 66 80 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

29

89
80
66
159

82
77

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
89 80 82 66 77 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
77
80
66
159

82
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
77 80 82 66 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
82
80
66
159

77
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
82 80 77 66 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
n II
Algoritmos y Programacio

Facultad de Ingeniera

30

3.3

Heap Sort completo

66
80
82
159

77
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
66 80 77 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
80
66
82
159

77
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
80 66 77 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
77
66
82
159

80
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
77 66 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
Enrique P. Calot

n II
Algoritmos y Programacio

3.3

Heap Sort completo

31

77
66
82
159

80
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
77 66 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Intercambio y congelamiento
66
77
82
159

80
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
Swapdown
66
77
82
159

80
89

175

187

117

125

198 201 203 247 272

294 304 310 386 398 399


Vector:
66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399
n II
Algoritmos y Programacio

Facultad de Ingeniera

32

3.4

3.4.

Heap Sort descendente

Heap Sort descendente

Desarrollar el algoritmo de Heap Sort en orden descendente (entero).

3.4.1.

Arbol
inicial

272
175

399

294

77

386

89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

Arbol
inicial y su vector asociado
Heapfy paso 0
272
175
294
386

399
77

89

398

82

117

304 203 66 80 201

198 187 125 247 159 310


Vector:
272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310
Heapfy paso 1
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

33

272
175

399

294

77

187

89

159

82

117

304 203 66 80 201

198 386 125 247 398 310


Vector:
272 175 399 294 77 82 117 187 89 159 304 203 66 80 201 198 386 125 247 398 310
Heapfy paso 2
272
175

399

89
187

77
125

159

66

80

304 203 82 117 201

198 386 294 247 398 310


Vector:
272 175 399 89 77 66 80 187 125 159 304 203 82 117 201 198 386 294 247 398 310
Heapfy paso 3
272
77
89
187

66
159

125

175

82

80

304 203 399 117 201

198 386 294 247 398 310


Vector:
272 77 66 89 159 82 80 187 125 175 304 203 399 117 201 198 386 294 247 398 310
Heapfy paso 4
n II
Algoritmos y Programacio

Facultad de Ingeniera

34

3.4

Heap Sort descendente

66
77
89
187

80
159

125

175

82

117

304 203 399 272 201

198 386 294 247 398 310


Vector:
66 77 80 89 159 82 117 187 125 175 304 203 399 272 201 198 386 294 247 398 310
Intercambio y congelamiento
310
77
89
187

80
159

125

175

82

117

304 203 399 272 201

198 386 294 247 398 66


Vector:
310 77 80 89 159 82 117 187 125 175 304 203 399 272 201 198 386 294 247 398 66
Swapdown
77
89
125
187

80
159

247

175

82

117

304 203 399 272 201

198 386 294 310 398 66


Vector:
77 89 80 125 159 82 117 187 247 175 304 203 399 272 201 198 386 294 310 398 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

35

398
89
125
187

80
159

247

175

82

117

304 203 399 272 201

198 386 294 310 77 66


Vector:
398 89 80 125 159 82 117 187 247 175 304 203 399 272 201 198 386 294 310 77 66
Swapdown
80
89
125
187

82
159

247

175

203

117

304 398 399 272 201

198 386 294 310 77 66


Vector:
80 89 82 125 159 203 117 187 247 175 304 398 399 272 201 198 386 294 310 77 66
Intercambio y congelamiento
310
89
125
187

82
159

247

175

203

117

304 398 399 272 201

198 386 294 80 77 66


Vector:
310 89 82 125 159 203 117 187 247 175 304 398 399 272 201 198 386 294 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

36

3.4

Heap Sort descendente

82
89
125
187

117
159

247

175

203

201

304 398 399 272 310

198 386 294 80 77 66


Vector:
82 89 117 125 159 203 201 187 247 175 304 398 399 272 310 198 386 294 80 77 66
Intercambio y congelamiento
294
89
125
187

117
159

247

175

203

201

304 398 399 272 310

198 386 82 80 77 66
Vector:
294 89 117 125 159 203 201 187 247 175 304 398 399 272 310 198 386 82 80 77 66
Swapdown
89
125
187
198

117
159

247

175

203

201

304 398 399 272 310

294 386 82 80 77 66
Vector:
89 125 117 187 159 203 201 198 247 175 304 398 399 272 310 294 386 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

37

386
125
187
198

117
159

247

175

203

201

304 398 399 272 310

294 89 82 80 77 66
Vector:
386 125 117 187 159 203 201 198 247 175 304 398 399 272 310 294 89 82 80 77 66
Swapdown
117
125
187
198

201
159

247

175

203

272

304 398 399 386 310

294 89 82 80 77 66
Vector:
117 125 201 187 159 203 272 198 247 175 304 398 399 386 310 294 89 82 80 77 66
Intercambio y congelamiento
294
125
187
198

201
159

247

175

203

272

304 398 399 386 310

117 89 82 80 77 66
Vector:
294 125 201 187 159 203 272 198 247 175 304 398 399 386 310 117 89 82 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

38

3.4

Heap Sort descendente

125
159
187
198

201
175

247

294

203

272

304 398 399 386 310

117 89 82 80 77 66
Vector:
125 159 201 187 175 203 272 198 247 294 304 398 399 386 310 117 89 82 80 77 66
Intercambio y congelamiento
310
159
187
198

201
175

247

294

203

272

304 398 399 386 125

117 89 82 80 77 66
Vector:
310 159 201 187 175 203 272 198 247 294 304 398 399 386 125 117 89 82 80 77 66
Swapdown
159
175
187
198

201
294

247

310

203

272

304 398 399 386 125

117 89 82 80 77 66
Vector:
159 175 201 187 294 203 272 198 247 310 304 398 399 386 125 117 89 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

39

386
175
187
198

201
294

247

310

203

272

304 398 399 159 125

117 89 82 80 77 66
Vector:
386 175 201 187 294 203 272 198 247 310 304 398 399 159 125 117 89 82 80 77 66
Swapdown
175
187
198
386

201
294

247

310

203

272

304 398 399 159 125

117 89 82 80 77 66
Vector:
175 187 201 198 294 203 272 386 247 310 304 398 399 159 125 117 89 82 80 77 66
Intercambio y congelamiento
399
187
198
386

201
294

247

310

203

272

304 398 175 159 125

117 89 82 80 77 66
Vector:
399 187 201 198 294 203 272 386 247 310 304 398 175 159 125 117 89 82 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

40

3.4

Heap Sort descendente

187
198
247
386

201
294

399

310

203

272

304 398 175 159 125

117 89 82 80 77 66
Vector:
187 198 201 247 294 203 272 386 399 310 304 398 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
398
198
247
386

201
294

399

310

203

272

304 187 175 159 125

117 89 82 80 77 66
Vector:
398 198 201 247 294 203 272 386 399 310 304 187 175 159 125 117 89 82 80 77 66
Swapdown
198
247
386
398

201
294

399

310

203

272

304 187 175 159 125

117 89 82 80 77 66
Vector:
198 247 201 386 294 203 272 398 399 310 304 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

41

304
247
386
398

201
294

399

310

203

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
304 247 201 386 294 203 272 398 399 310 198 187 175 159 125 117 89 82 80 77 66
Swapdown
201
247
386
398

203
294

399

310

304

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
201 247 203 386 294 304 272 398 399 310 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
310
247
386
398

203
294

399

201

304

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
310 247 203 386 294 304 272 398 399 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

42

3.4

Heap Sort descendente

203
247
386
398

272
294

399

201

304

310

198 187 175 159 125

117 89 82 80 77 66
Vector:
203 247 272 386 294 304 310 398 399 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
399
247
386
398

272
294

203

201

304

310

198 187 175 159 125

117 89 82 80 77 66
Vector:
399 247 272 386 294 304 310 398 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
247
294
386
398

272
399

203

201

304

310

198 187 175 159 125

117 89 82 80 77 66
Vector:
247 294 272 386 399 304 310 398 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

43

398
294
386
247

272
399

203

201

304

310

198 187 175 159 125

117 89 82 80 77 66
Vector:
398 294 272 386 399 304 310 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
272
294
386
247

304
399

203

201

398

310

198 187 175 159 125

117 89 82 80 77 66
Vector:
272 294 304 386 399 398 310 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
310
294
386
247

304
399

203

201

398

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
310 294 304 386 399 398 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

44

3.4

Heap Sort descendente

294
310
386
247

304
399

203

201

398

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
294 310 304 386 399 398 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
398
310
386
247

304
399

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
398 310 304 386 399 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
304
310
386
247

398
399

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
304 310 398 386 399 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.4

Heap Sort descendente

45

399
310
386
247

398
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
399 310 398 386 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
310
386
399
247

398
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
310 386 398 399 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
399
386
310
247

398
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
399 386 398 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
n II
Algoritmos y Programacio

Facultad de Ingeniera

46

3.4

Heap Sort descendente

386
399
310
247

398
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
386 399 398 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
398
399
310
247

386
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
398 399 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
398
399
310
247

386
304

203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
398 399 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Intercambio y congelamiento
Enrique P. Calot

n II
Algoritmos y Programacio

3.5

Merge Polif
asico de las salidas por selecci
on de reemplazo

47

399
398

386

310
247

304
203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66
Swapdown
399
398

386

310
247

304
203

201

294

272

198 187 175 159 125

117 89 82 80 77 66
Vector:
399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

3.5.

Merge Polif
asico de las salidas por selecci
on de reemplazo

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion de reemplazo.
3.5.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
Fases
0
1
2

c1
1
1
2

c2
0
1
2

c3
0
1
1

P3

i=1 ci

1
3
5

<4
Si
Si
No

Cuadro 5: Calculo de la distribuci


on de columnas y dummies
n II
Algoritmos y Programacio

Facultad de Ingeniera

48

3.6

E1
D

E2
175, 272, 294, 399

66, 80, 125, 187, 198,


201, 247, 310

159

Merge Polif
asico de las particiones marcadas

E3
77, 82, 89, 117, 203,
304, 386, 398

Cuadro 6: Fase 1
E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 203,
304, 386, 398

E1
66, 80, 125, 187, 198,
201, 247, 310

E2
159

S
77, 82, 89, 117,
203, 272, 294,
386, 398, 399
E3
77, 82, 89, 117,
203, 272, 294,
386, 398, 399

175,
304,

175,
304,

Cuadro 7: Fase 2
3.5.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 5 = 2 + 2 + 1 = 4 + 1. Por lo tanto es necesario repartir 5 particiones de las
cuales 1 son dummies (particiones vacas) y 4 son mis particiones de entrada.

3.6.

Merge Polif
asico de las particiones marcadas

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las 7 particiones
correspondientes de ordenadar los subgrupos del lote de datos separados por .
Por ejemplo p1 = {77, 175, 272, 294, 399}; p2 = {82, 117, 386}; . . . ; p6 = {125, 187}; p7 = {159, 247, 310}.
3.6.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.6.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 9 = 4 + 3 + 2 = 7 + 2. Por lo tanto es necesario repartir 9 particiones de las
cuales 2 son dummies (particiones vacas) y 7 son mis particiones de entrada.

3.7.

Merge Polif
asico completo con particiones formadas de 1 elemento

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con 21 particiones
ordenadas tomadas del lote de datos.
Enrique P. Calot

n II
Algoritmos y Programacio

3.7

Merge Polif
asico completo con particiones formadas de 1 elemento

E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 203,
304, 386, 398

E1
66, 80, 125, 187, 198,
201, 247, 310

E2
159

E2

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Fases
0
1
2
3

Cuadro 8: Fase final


P3
c1 c2 c3
i=1 ci
1
0
0
1
1
1
1
3
2
2
1
5
4
3
2
9

S
77, 82, 89, 117,
203, 272, 294,
386, 398, 399
E3
77, 82, 89, 117,
203, 272, 294,
386, 398, 399

49

175,
304,

175,
304,

E3

<7
Si
Si
Si
No

Cuadro 9: Calculo de la distribuci


on de columnas y dummies
E1
D
82, 117, 386
66, 80, 198, 201, 203
159, 247, 310

E2
D
89
125, 187

E3
77, 175, 272, 294, 399
304, 398

Cuadro 10: Fase 1


E1
D
82, 117, 386

E2
D
89

E3
77, 175, 272, 294, 399
304, 398

E1
66, 80, 198, 201, 203
159, 247, 310

E2
125, 187

S
77, 175, 272, 294, 399
82, 89, 117, 304, 386,
398
E3
77, 175, 272, 294, 399
82, 89, 117, 304, 386,
398

Cuadro 11: Fase 2


n II
Algoritmos y Programacio

Facultad de Ingeniera

50

3.8

Merge Polif
asico con particiones formadas de 2 elementos

E1
D
82, 117, 386

E2
D
89

E3
77, 175, 272, 294, 399
304, 398

E1
66, 80, 198, 201, 203

E2
125, 187

E1
159, 247, 310

S
66, 77, 80, 125,
187, 198, 201,
272, 294, 399
E2
66, 77, 80, 125,
187, 198, 201,
272, 294, 399

Fases
0
1
2
3
4
5

Cuadro 12: Fase 3


P3
c1 c2 c3
i=1 ci
1
0
0
1
1
1
1
3
2
2
1
5
4
3
2
9
7
6
4
17
13 11 7
31

175,
203,

175,
203,

S
77, 175, 272, 294, 399
82, 89, 117, 304, 386,
398
E3
77, 175, 272, 294, 399

E3
82, 89, 117, 304, 386,
398

< 21
Si
Si
Si
Si
Si
No

Cuadro 13: Calculo de la distribuci


on de columnas y dummies
3.7.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.7.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 31 = 13 + 11 + 7 = 21 + 10. Por lo tanto es necesario repartir 31 particiones
de las cuales 10 son dummies (particiones vacas) y 21 son mis particiones de entrada.

3.8.

Merge Polif
asico con particiones formadas de 2 elementos

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con 11 particiones
ordenadas de 2 elementos cada una tomadas del lote de datos.
Por ejemplo p1 = {175, 272}; p2 = {294, 399}; . . . ; p10 = {159, 247}; p11 = {310}.
3.8.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
Enrique P. Calot

n II
Algoritmos y Programacio

3.8

Merge Polif
asico con particiones formadas de 2 elementos

E1
D
D
D
D
399
82
89
203
80
198
125
159
310

E2
D
D
D
272
294
117
398
66
201
187
247

E3
D
D
D
175
77
386
304

51

Cuadro 14: Fase 1

E1
D
D
D
D
399
82
89
E1
203
80
198
125
159
310

E2
D
D
D
272
294
117
398
E2
66
201
187
247

E3
D
D
D
175
77
386
304
S

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398

Cuadro 15: Fase 2

n II
Algoritmos y Programacio

Facultad de Ingeniera

52

3.9

E1
D
D
D
D
399
82
89
E1
203
80
198
125
E1
159
310

E2
D
D
D
272
294
117
398
E2
66
201
187
247
S

Merge Polif
asico con particiones formadas de 3 elementos

E3
D
D
D
175
77
386
304
S
66, 203
80, 201
187, 198
125, 175, 247, 272
E2
66, 203
80, 201
187, 198
125, 175, 247, 272

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
E3
77, 294, 399
82, 117, 386
89, 304, 398

Cuadro 16: Fase 3


3.8.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 17 = 7 + 6 + 4 = 11 + 6. Por lo tanto es necesario repartir 17 particiones
de las cuales 6 son dummies (particiones vacas) y 11 son mis particiones de entrada.

3.9.

Merge Polif
asico con particiones formadas de 3 elementos

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con 7 particiones
ordenadas de 3 elementos cada una tomadas del lote de datos.
Por ejemplo p1 = {175, 272, 399}; p2 = {77, 82, 294}; . . . ; p6 = {125, 187, 198}; p7 = {159, 247, 310}.
3.9.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.9.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 9 = 4 + 3 + 2 = 7 + 2. Por lo tanto es necesario repartir 9 particiones de las
cuales 2 son dummies (particiones vacas) y 7 son mis particiones de entrada.

Enrique P. Calot

n II
Algoritmos y Programacio

3.9

Merge Polif
asico con particiones formadas de 3 elementos

E1
D
D
D
D
399
82
89
E1
203
80
198
125
E1
159
310
S

E2
D
D
D
272
294
117
398
E2
66
201
187
247
S
66, 77,
399
80, 82,
386
E1
66, 77,
399
80, 82,
386

53

159, 203, 294,

E3
D
D
D
175
77
386
304
S
66, 203
80, 201
187, 198
125, 175, 247, 272
E2
66, 203

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
E3
77, 294, 399

117, 201, 310,

80, 201

82, 117, 386

159, 203, 294,

E2
187, 198

E3
89, 304, 398

117, 201, 310,

125, 175, 247, 272

Cuadro 17: Fase 4

n II
Algoritmos y Programacio

Facultad de Ingeniera

54

3.9

E1
D
D
D
D
399
82
89
E1
203
80
198
125
E1
159

E3
D
D
D
175
77
386
304
S
66, 203
80, 201
187, 198
125, 175, 247, 272
E2
66, 203

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
E3
77, 294, 399

80, 201

82, 117, 386

187,
304,

E2
D
D
D
272
294
117
398
E2
66
201
187
247
S
66, 77, 159, 203, 294,
399
80, 82, 117, 201, 310,
386
E1
66, 77, 159, 203, 294,
399

E2
187, 198

E3
89, 304, 398

187,
304,

E1
80, 82, 117, 201, 310,
386

E2
125, 175, 247, 272

310
S
66, 77, 89, 159,
198, 203, 294,
398, 399
E3
66, 77, 89, 159,
198, 203, 294,
398, 399

Merge Polif
asico con particiones formadas de 3 elementos

Cuadro 18: Fase 5

Enrique P. Calot

n II
Algoritmos y Programacio

3.9

Merge Polif
asico con particiones formadas de 3 elementos

E1
D
D
D
D
399
82
89
E1
203
80
198
125
E1
159

E3
D
D
D
175
77
386
304
S
66, 203
80, 201
187, 198
125, 175, 247, 272
E2
66, 203

S
D
D
D
175, 272
77, 294, 399
82, 117, 386
89, 304, 398
E3
D
D
D
175, 272
E3
77, 294, 399

80, 201

82, 117, 386

187,
304,

E2
D
D
D
272
294
117
398
E2
66
201
187
247
S
66, 77, 159, 203, 294,
399
80, 82, 117, 201, 310,
386
E1
66, 77, 159, 203, 294,
399

E2
187, 198

E3
89, 304, 398

187,
304,

E1
80, 82, 117, 201, 310,
386

E2
125, 175, 247, 272

E1

E2

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E3
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

310
S
66, 77, 89, 159,
198, 203, 294,
398, 399
E3
66, 77, 89, 159,
198, 203, 294,
398, 399

55

Fases
0
1
2
3
4

Cuadro 19: Fase final


P3
c1 c2 c3
i=1 ci
1
0
0
1
1
1
1
3
2
2
1
5
4
3
2
9
7
6
4
17

< 11
Si
Si
Si
Si
No

Cuadro 20: Calculo de la distribuci


on de columnas y dummies
n II
Algoritmos y Programacio

Facultad de Ingeniera

56

3.9

E1
D
D
175, 272
117, 386
66, 80
125, 187
310

Merge Polif
asico con particiones formadas de 3 elementos

E2
D
D
294, 399
89, 398
198, 201
159, 247

E3
D
D
77, 82
203, 304

Cuadro 21: Fase 1


E1
D
D
175, 272

E2
D
D
294, 399

E3
D
D
77, 82

117, 386

89, 398

203, 304

E1
66, 80
125, 187
310

E2
198, 201
159, 247

S
D
D
77, 82, 175, 272,
399
89, 117, 203,
386, 398
E3
D
D
77, 82, 175, 272,
399
89, 117, 203,
386, 398

294,
304,

294,
304,

Cuadro 22: Fase 2


E1
D
D
175, 272

E2
D
D
294, 399

E3
D
D
77, 82

117, 386

89, 398

203, 304

E1
66, 80
125, 187
E1
310

E2
198, 201
159, 247
S

S
66, 80, 198, 201
125, 159, 187, 247
E2
66, 80, 198, 201

125, 159, 187, 247

S
D
D
77, 82, 175, 272,
399
89, 117, 203,
386, 398
E3
D
D
E3
77, 82, 175, 272,
399
89, 117, 203,
386, 398

294,
304,

294,
304,

Cuadro 23: Fase 3


Enrique P. Calot

n II
Algoritmos y Programacio

3.10

Merge Polif
asico con particiones formadas de 4 elementos

E1
D
D
175, 272

E2
D
D
294, 399

E3
D
D
77, 82

117, 386

89, 398

203, 304

E1
66, 80
125, 187
E1
310

E2
198, 201
159, 247
S
66, 77, 80, 82,
198, 201, 272,
310, 399
E1
66, 77, 80, 82,
198, 201, 272,
310, 399

S
66, 80, 198, 201
125, 159, 187, 247
E2
66, 80, 198, 201

175,
294,

175,
294,

E2
125, 159, 187, 247

57

S
D
D
77, 82, 175, 272, 294,
399
89, 117, 203, 304,
386, 398
E3
D
D
E3
77, 82, 175, 272, 294,
399
E3
89, 117, 203, 304,
386, 398

Cuadro 24: Fase 4

3.10.

Merge Polif
asico con particiones formadas de 4 elementos

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con 6 particiones
ordenadas de 4 elementos cada una tomadas del lote de datos.
Es decir las particiones seran p1 = {175, 272, 294, 399}; p2 = {77, 82, 117, 386}; p3 = {89, 203, 304, 398}; p4 =
{66, 80, 198, 201}; p5 = {125, 159, 187, 247}; p6 = {310}.
3.10.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.10.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 9 = 4 + 3 + 2 = 6 + 3. Por lo tanto es necesario repartir 9 particiones de las
cuales 3 son dummies (particiones vacas) y 6 son mis particiones de entrada.

3.11.

Selecci
on de reemplazo con buffer de tama
no 2

Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama


no 2.
3.11.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion de reemplazo para particionar el


lote de datos dado.
n II
Algoritmos y Programacio

Facultad de Ingeniera

58

3.11

Selecci
on de reemplazo con buffer de tama
no 2

E1
D
D
175, 272

E2
D
D
294, 399

E3
D
D
77, 82

117, 386

89, 398

203, 304

E1
66, 80
125, 187
E1
310

E2
198, 201
159, 247
S
66, 77, 80, 82,
198, 201, 272,
310, 399
E1
66, 77, 80, 82,
198, 201, 272,
310, 399

S
66, 80, 198, 201
125, 159, 187, 247
E2
66, 80, 198, 201

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

175,
294,

175,
294,

S
D
D
77, 82, 175, 272, 294,
399
89, 117, 203, 304,
386, 398
E3
D
D
E3
77, 82, 175, 272, 294,
399

E2
125, 159, 187, 247

E3
89, 117, 203, 304,
386, 398

E2

E3

Cuadro 25: Fase final


Fases
0
1
2
3

c1
1
1
2
4

c2
0
1
2
3

c3
0
1
1
2

P3

i=1 ci

1
3
5
9

<7
Si
Si
Si
No

Cuadro 26: Calculo de la distribuci


on de columnas y dummies
E1
D
77, 82, 294
66, 80, 201
159, 247, 310

E2
D
89, 117, 386
125, 187, 198

E3
175, 272, 399
203, 304, 398

Cuadro 27: Fase 1


Enrique P. Calot

n II
Algoritmos y Programacio

3.11

Selecci
on de reemplazo con buffer de tama
no 2

E1
D
77, 82, 294

E2
D
89, 117, 386

E3
175, 272, 399
203, 304, 398

E1
66, 80, 201
159, 247, 310

E2
125, 187, 198

59

S
175, 272, 399
77, 82, 89, 117, 203,
294, 304, 386, 398
E3
175, 272, 399
77, 82, 89, 117, 203,
294, 304, 386, 398

Cuadro 28: Fase 2

E1
D
77, 82, 294

E2
D
89, 117, 386

E3
175, 272, 399
203, 304, 398

E1
66, 80, 201

E2
125, 187, 198

E1
159, 247, 310

S
66, 80, 125, 175, 187,
198, 201, 272, 399
E2
66, 80, 125, 175, 187,
198, 201, 272, 399

S
175, 272, 399
77, 82, 89, 117, 203,
294, 304, 386, 398
E3
175, 272, 399
E3
77, 82, 89, 117, 203,
294, 304, 386, 398

Cuadro 29: Fase 3

n II
Algoritmos y Programacio

Facultad de Ingeniera

60

3.11

Selecci
on de reemplazo con buffer de tama
no 2

E1
D
77, 82, 294

E2
D
89, 117, 386

E3
175, 272, 399
203, 304, 398

E1
66, 80, 201

E2
125, 187, 198

E1
159, 247, 310

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

S
66, 80, 125, 175, 187,
198, 201, 272, 399
E2
66, 80, 125, 175, 187,
198, 201, 272, 399

E2

S
175, 272, 399
77, 82, 89, 117, 203,
294, 304, 386, 398
E3
175, 272, 399
E3
77, 82, 89, 117, 203,
294, 304, 386, 398

E3

Cuadro 30: Fase final

Fases
0
1
2
3

c1
1
1
2
4

c2
0
1
2
3

c3
0
1
1
2

P3

i=1 ci

1
3
5
9

<6
Si
Si
Si
No

Cuadro 31: Calculo de la distribuci


on de columnas y dummies

E1
D
175, 272, 294, 399
66, 80, 198, 201
310

E2
D
77, 82, 117, 386
125, 159, 187, 247

E3
D
89, 203, 304, 398

Cuadro 32: Fase 1

Enrique P. Calot

n II
Algoritmos y Programacio

3.11

Selecci
on de reemplazo con buffer de tama
no 2

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386

E3
D
89, 203, 304, 398

E1
66, 80, 198, 201
310

E2
125, 159, 187, 247

61

S
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399
E3
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399

175,
304,

175,
304,

Cuadro 33: Fase 2

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386

E3
D
89, 203, 304, 398

E1
66, 80, 198, 201

E2
125, 159, 187, 247

E1
310

S
66, 80, 125, 159, 187,
198, 201, 247
E2
66, 80, 125, 159, 187,
198, 201, 247

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

Cuadro 34: Fase 3

n II
Algoritmos y Programacio

Facultad de Ingeniera

62

3.11

Selecci
on de reemplazo con buffer de tama
no 2

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386

E3
D
89, 203, 304, 398

E1
66, 80, 198, 201

E2
125, 159, 187, 247

E1
310

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

S
66, 80, 125, 159, 187,
198, 201, 247
E2
66, 80, 125, 159, 187,
198, 201, 247

E2

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

E3

Cuadro 35: Fase final

Enrique P. Calot

n II
Algoritmos y Programacio

3.12

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer tama
no 2

63

b1
b2
Sale
Entra

Nada
272
272

Nada
175
272
175
175
399
272
399
272
294
294
399
294
77
77
399
399
82
77
82
Nueva partici
on! Se cierra la partici
on p1 = {175, 272, 294, 399}
77
117
117
82
82
386
117
386
117
89
89
386
386
398
89
398
398
304
89
304
Nueva partici
on! Se cierra la partici
on p2 = {77, 82, 117, 386, 398}
89
203
203
304
203
66
66
304
304
80
66
80
Nueva partici
on! Se cierra la partici
on p3 = {89, 203, 304}
66
201
201
80
80
198
201
198
198
187
201
187
201
125
125
187
Nueva partici
on! Se cierra la partici
on p4 = {66, 80, 198, 201}
125
247
247
187
187
159
247
159
247
310
310
159
310
Nada

159
Nueva partici
on! Se cierra la partici
on p5 = {125, 187, 247, 310}
159
Nada
Finaliza la u
ltima partici
on en p6 = {159}

3.11.2.

Salida final

p1 = {175, 272, 294, 399};


p2 = {77, 82, 117, 386, 398};
p3 = {89, 203, 304};
p4 = {66, 80, 198, 201};
p5 = {125, 187, 247, 310};
p6 = {159}.

3.12.

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer
tama
no 2

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion de reemplazo.
n II
Algoritmos y Programacio

Facultad de Ingeniera

64

3.13

Fases
0
1
2
3

c1
1
1
2
4

c2
0
1
2
3

Selecci
on Natural con buffers de tama
no 2
P3

i=1 ci

c3
0
1
1
2

1
3
5
9

<6
Si
Si
Si
No

Cuadro 36: Calculo de la distribuci


on de columnas y dummies
E1
D
175, 272, 294, 399
66, 80, 198, 201
159

E2
D
77, 82, 117, 386, 398
125, 187, 247, 310

E3
D
89, 203, 304

Cuadro 37: Fase 1


3.12.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.12.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 9 = 4 + 3 + 2 = 6 + 3. Por lo tanto es necesario repartir 9 particiones de las
cuales 3 son dummies (particiones vacas) y 6 son mis particiones de entrada.

3.13.

Selecci
on Natural con buffers de tama
no 2

Desarrollar el algoritmo de seleccion natural con buffers de tama


no 2.
E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201
159

E2
125, 187, 247, 310

S
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399
E3
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399

175,
304,

175,
304,

Cuadro 38: Fase 2


Enrique P. Calot

n II
Algoritmos y Programacio

3.13

Selecci
on Natural con buffers de tama
no 2

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201

E2
125, 187, 247, 310

E1
159

S
66, 80, 125, 187, 198,
201, 247, 310
E2
66, 80, 125, 187, 198,
201, 247, 310

65

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

Cuadro 39: Fase 3

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201

E2
125, 187, 247, 310

E1
159

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

S
66, 80, 125, 187, 198,
201, 247, 310
E2
66, 80, 125, 187, 198,
201, 247, 310

E2

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

E3

Cuadro 40: Fase final

n II
Algoritmos y Programacio

Facultad de Ingeniera

66

3.13

3.13.1.

Selecci
on Natural con buffers de tama
no 2

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion natural para particionar el lote de
datos dado.
a1
a2
Sale

Nada

Nada

175

272

294
77

Nada
77
82
399

Se cierra la partici
on p1 = {175, 272, 294, 399}
77
117
82

82
117
386

117

386
89

Nada
398
386
89

386
398

89
304
398
89
304

Nueva partici
on! Se cierra la partici
on p2 = {77, 82, 117, 386, 398}
89
203
304

203

304
66

Nada

304
66
80
304
66
80

Nueva partici
on! Se cierra la partici
on p3 = {89, 203, 304}
66
201
80

80
201
198

198
201

187

Nada
201

187
125
201
187
125

Nueva partici
on! Se cierra la partici
on p4 = {66, 80, 198, 201}
125
187
247

187

247
159

Nada
310
247
159

247
310

159

310
159

Nueva partici
on! Se cierra la partici
on p5 = {125, 187, 247, 310}
159
Finaliza la u
ltima partici
on en p6 = {159}
b1
b2

272

272
175
272
399
294
399

399

399
77
82
Nueva partici
on!

3.13.2.

Entra
272
175
399
294
77
82
Nada

117
386
89
398
304
Nada

203
66
80
Nada

201
198
187
125
Nada

247
159
310
Nada
Nada

Nada

Salida final

p1 = {175, 272, 294, 399};


p2 = {77, 82, 117, 386, 398};
p3 = {89, 203, 304};
p4 = {66, 80, 198, 201};
p5 = {125, 187, 247, 310};
p6 = {159}.
Enrique P. Calot

n II
Algoritmos y Programacio

3.14

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 2

Fases
0
1
2
3

c1
1
1
2
4

c2
0
1
2
3

P3

i=1 ci

c3
0
1
1
2

1
3
5
9

67

<6
Si
Si
Si
No

Cuadro 41: Calculo de la distribuci


on de columnas y dummies
E1
D
175, 272, 294, 399
66, 80, 198, 201
159

E2
D
77, 82, 117, 386, 398
125, 187, 247, 310

E3
D
89, 203, 304

Cuadro 42: Fase 1

3.14.

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no
2

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion natural.
3.14.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.14.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 9 = 4 + 3 + 2 = 6 + 3. Por lo tanto es necesario repartir 9 particiones de las
cuales 3 son dummies (particiones vacas) y 6 son mis particiones de entrada.

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201
159

E2
125, 187, 247, 310

S
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399
E3
D
77, 82, 89, 117,
203, 272, 294,
386, 398, 399

175,
304,

175,
304,

Cuadro 43: Fase 2


n II
Algoritmos y Programacio

Facultad de Ingeniera

68

3.14

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 2

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201

E2
125, 187, 247, 310

E1
159

S
66, 80, 125, 187, 198,
201, 247, 310
E2
66, 80, 125, 187, 198,
201, 247, 310

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

Cuadro 44: Fase 3

E1
D
175, 272, 294, 399

E2
D
77, 82, 117, 386, 398

E3
D
89, 203, 304

E1
66, 80, 198, 201

E2
125, 187, 247, 310

E1
159

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

S
66, 80, 125, 187, 198,
201, 247, 310
E2
66, 80, 125, 187, 198,
201, 247, 310

E2

S
D
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399
E3
D
E3
77, 82, 89, 117, 175,
203, 272, 294, 304,
386, 398, 399

E3

Cuadro 45: Fase final

Enrique P. Calot

n II
Algoritmos y Programacio

3.15

Selecci
on de reemplazo con buffer de tama
no 3

3.15.

69

Selecci
on de reemplazo con buffer de tama
no 3

Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama


no 3.
3.15.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion de reemplazo para particionar el


lote de datos dado.
b1
b2
b3
Sale
Entra

Nada
272
272

Nada
175
272
175

Nada
399
272
175
399
175
294
272
294
399
272
77
77
294
399
294
82
77
82
399
399
117
77
82
117
Nueva partici
on! Se cierra la partici
on p1 = {175, 272, 294, 399}
77
386
386
82
117
82
89
386
89
117
89
398
386
398
117
117
304
386
398
304
304
203
386
398
203
386
66
66
398
203
398
80
66
80
203
Nueva
partici
on!
Se
cierra
la
partici
on
p2
=
{77, 82, 89, 117, 304, 386, 398}
66
201
201
80
203
80
198
201
198
203
198
187
201
187
203
201
125
125
187
203
203
247
125
187
247
247
159
125
187
159
Nueva partici
on! Se cierra la partici
on p3 = {66, 80, 198, 201, 203, 247}
125
310
310
187
159
159
Nada
310
187

187
Nada
310

310
Nada
Finaliza la u
ltima partici
on en p4 = {125, 159, 187, 310}

3.15.2.

Salida final

p1 = {175, 272, 294, 399};


p2 = {77, 82, 89, 117, 304, 386, 398};
p3 = {66, 80, 198, 201, 203, 247};
p4 = {125, 159, 187, 310}.

3.16.

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer
tama
no 3

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion de reemplazo.
n II
Algoritmos y Programacio

Facultad de Ingeniera

70

3.17

Fases
0
1
2

c1
1
1
2

c2
0
1
2

Selecci
on Natural con buffers de tama
no 3
P3

i=1 ci

c3
0
1
1

1
3
5

<4
Si
Si
No

Cuadro 46: Calculo de la distribuci


on de columnas y dummies
E1
D

E2
175, 272, 294, 399

66, 80, 198, 201, 203,


247

125, 159, 187, 310

E3
77, 82, 89, 117, 304,
386, 398

Cuadro 47: Fase 1


3.16.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.16.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 5 = 2 + 2 + 1 = 4 + 1. Por lo tanto es necesario repartir 5 particiones de las
cuales 1 son dummies (particiones vacas) y 4 son mis particiones de entrada.

3.17.

Selecci
on Natural con buffers de tama
no 3

Desarrollar el algoritmo de seleccion natural con buffers de tama


no 3.
3.17.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion natural para particionar el lote de
datos dado.
E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 304,
386, 398

E1
66, 80, 198, 201, 203,
247

E2
125, 159, 187, 310

S
77, 82, 89, 117,
272, 294, 304,
398, 399
E3
77, 82, 89, 117,
272, 294, 304,
398, 399

175,
386,

175,
386,

Cuadro 48: Fase 2


Enrique P. Calot

n II
Algoritmos y Programacio

3.17

Selecci
on Natural con buffers de tama
no 3

E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 304,
386, 398

E1
66, 80, 198, 201, 203,
247

E2
125, 159, 187, 310

E2

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

71

S
77, 82, 89, 117,
272, 294, 304,
398, 399
E3
77, 82, 89, 117,
272, 294, 304,
398, 399

175,
386,

175,
386,

E3

Cuadro 49: Fase final

n II
Algoritmos y Programacio

Facultad de Ingeniera

72

3.18

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 3

b1
b2
b3
a1
a2
a3
Sale

Nada
272

Nada
272
175

Nada
272
175
399

175
272
294
399

272

294
399
77

Nada

294
399
77
82

Nada

294
399
77
82
117
294

399
77
82
117
399
77
82
117

Nueva partici
on! Se cierra la partici
on p1 = {175, 272, 294, 399}
77
386
82
117

82
386
89
117

89
386
398
117

117
386
398
304

304
386
398

203

Nada
386
398

203
66

Nada
386
398

203
66
80
386

398

203
66
80
398
203
66
80

Nueva partici
on! Se cierra la partici
on p2 = {77, 82, 89, 117, 304, 386, 398}
66
203
201
80

80
203
201
198

198
203
201

187

Nada
203
201

187
125

Nada
203
201
247
187
125

201
203

247
187
125
159
203

247
187
125
159
247
187
125
159

Nueva partici
on! Se cierra la partici
on p3 = {66, 80, 198, 201, 203, 247}
125
187
310
159

159
187
310

187

310

310
Finaliza la u
ltima partici
on en p4 = {125, 159, 187, 310}

3.17.2.

Entra
272
175
399
294
77
82
117
Nada
Nada

386
89
398
304
203
66
80
Nada
Nada

201
198
187
125
247
159
Nada
Nada

310
Nada
Nada
Nada

Salida final

p1 = {175, 272, 294, 399};


p2 = {77, 82, 89, 117, 304, 386, 398};
p3 = {66, 80, 198, 201, 203, 247};
p4 = {125, 159, 187, 310}.

3.18.

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no
3

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion natural.
3.18.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
Enrique P. Calot

n II
Algoritmos y Programacio

3.19

Selecci
on Natural con buffers de tama
no 4

Fases
0
1
2

c1
1
1
2

c2
0
1
2

73
P3

i=1 ci

c3
0
1
1

1
3
5

<4
Si
Si
No

Cuadro 50: Calculo de la distribuci


on de columnas y dummies
E1
D

E2
175, 272, 294, 399

66, 80, 198, 201, 203,


247

125, 159, 187, 310

E3
77, 82, 89, 117, 304,
386, 398

Cuadro 51: Fase 1

3.18.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 5 = 2 + 2 + 1 = 4 + 1. Por lo tanto es necesario repartir 5 particiones de las
cuales 1 son dummies (particiones vacas) y 4 son mis particiones de entrada.

3.19.

Selecci
on Natural con buffers de tama
no 4

Desarrollar el algoritmo de seleccion natural con buffers de tama


no 4.

3.19.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion natural para particionar el lote de
datos dado.

E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 304,
386, 398

E1
66, 80, 198, 201, 203,
247

E2
125, 159, 187, 310

S
77, 82, 89, 117,
272, 294, 304,
398, 399
E3
77, 82, 89, 117,
272, 294, 304,
398, 399

175,
386,

175,
386,

Cuadro 52: Fase 2


n II
Algoritmos y Programacio

Facultad de Ingeniera

74

3.19

Selecci
on Natural con buffers de tama
no 4

E1
D

E2
175, 272, 294, 399

E3
77, 82, 89, 117, 304,
386, 398

E1
66, 80, 198, 201, 203,
247

E2
125, 159, 187, 310

E2

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

S
77, 82, 89, 117,
272, 294, 304,
398, 399
E3
77, 82, 89, 117,
272, 294, 304,
398, 399

175,
386,

175,
386,

E3

Cuadro 53: Fase final


b1
b2
b3
b4
a1
a2
a3
a4
Sale

Nada
272

Nada
272
175

Nada
272
175
399

Nada
272
175
399
294

175
272

399
294
77

Nada
272

399
294
77
82

Nada
272

399
294
77
82
117

Nada
272
386
399
294
77
82
117

272

386
399
294
77
82
117
89
294

386
399

77
82
117
89
386

399

77
82
117
89
399
77
82
117
89

Nueva partici
on! Se cierra la partici
on p1 = {175, 272, 294, 386, 399}
77
398
82
117
89

82
398
304
117
89

89
398
304
117
203

117
398
304

203
66

Nada
398
304

203
66
80

Nada
398
304
201
203
66
80

201
398
304

203
66
80
198

Nada
398
304

203
66
80
198
187
203
398
304

66
80
198
187
304
398

66
80
198
187
398
66
80
198
187

Nueva partici
on! Se cierra la partici
on p2 = {77, 82, 89, 117, 201, 203, 304, 398}
66
125
80
198
187

80
125
247
198
187

125
159
247
198
187

159
310
247
198
187

187
310
247
198

198
310
247

247
310

310
Finaliza la u
ltima partici
on en p3 = {66, 80, 125, 159, 187, 198, 247, 310}

Enrique P. Calot

Entra
272
175
399
294
77
82
117
386
89
Nada
Nada
Nada

398
304
203
66
80
201
198
187
Nada
Nada
Nada

125
247
159
310
Nada
Nada
Nada
Nada

n II
Algoritmos y Programacio

3.20

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 4

Fases
0
1

c1
1
1

c2
0
1

c3
0
1

P3

i=1 ci

1
3

75

<3
Si
No

Cuadro 54: Calculo de la distribuci


on de columnas y dummies
E1
175, 272, 294, 386,
399

E2
77, 82, 89, 117, 201,
203, 304, 398

E3
66, 80, 125, 159, 187,
198, 247, 310

Cuadro 55: Fase 1


3.19.2.

Salida final

p1 = {175, 272, 294, 386, 399};


p2 = {77, 82, 89, 117, 201, 203, 304, 398};
p3 = {66, 80, 125, 159, 187, 198, 247, 310}.

3.20.

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no
4

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion natural.
3.20.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.20.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 3 = 1 + 1 + 1 = 3 + 0. Por lo tanto es necesario repartir 3 particiones de las
cuales 0 son dummies (particiones vacas) y 3 son mis particiones de entrada.

3.21.

Selecci
on de reemplazo con buffer de tama
no 5

Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama


no 5.
3.21.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion de reemplazo para particionar el


lote de datos dado.

n II
Algoritmos y Programacio

Facultad de Ingeniera

76

3.21

Selecci
on de reemplazo con buffer de tama
no 5

E1
175, 272, 294, 386,
399

E2
77, 82, 89, 117, 201,
203, 304, 398

E3
66, 80, 125, 159, 187,
198, 247, 310

E2

E3

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Cuadro 56: Fase final


b1
b2
b3
b4
b5
Sale

Nada
272

Nada
272
175

Nada
272
175
399

Nada
272
175
399
294

Nada
272
175
399
294
77
77
272
175
399
294
82
82
272
175
399
294
117
117
272
175
399
294
386
175
272
89
399
294
386
272
398
89
399
294
386
294
398
89
399
304
386
304
398
89
399
203
386
386
398
89
399
203
66
398
80
89
399
203
66
399
80
89
201
203
66
Nueva
partici
on!
Se
cierra
la
partici
on
{77, 82, 117, 175, 272, 294, 304, 386, 398, 399}
66
80
89
201
203
198
80
187
89
201
203
198
89
187
125
201
203
198
125
187
247
201
203
198
187
159
247
201
203
198
198
159
247
201
203
310
201
159
247

203
310
203
159
247

310
247
159

310
310
159

Nueva
partici
on!
Se
cierra
la
partici
on
{66, 80, 89, 125, 187, 198, 201, 203, 247, 310}
159
Finaliza la u
ltima partici
on en p3 = {159}

3.21.2.

Entra
272
175
399
294
77
82
117
386
89
398
304
203
66
80
201
p1

198
187
125
247
159
310
Nada
Nada
Nada
Nada
p2

Nada

Salida final

p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399};
p2 = {66, 80, 89, 125, 187, 198, 201, 203, 247, 310};
Enrique P. Calot

n II
Algoritmos y Programacio

3.22

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer tama
no 5

Fases
0
1

c1
1
1

c2
0
1

c3
0
1

P3

i=1 ci

1
3

77

<3
Si
No

Cuadro 57: Calculo de la distribuci


on de columnas y dummies
E1
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E2
66, 80, 89, 125, 187,
198, 201, 203, 247,
310

E3
159

Cuadro 58: Fase 1


p3 = {159}.

3.22.

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer
tama
no 5

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion de reemplazo.

3.22.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.

3.22.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 3 = 1 + 1 + 1 = 3 + 0. Por lo tanto es necesario repartir 3 particiones de las
cuales 0 son dummies (particiones vacas) y 3 son mis particiones de entrada.

3.23.

Selecci
on Natural con buffers de tama
no 5

Desarrollar el algoritmo de seleccion natural con buffers de tama


no 5.

3.23.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion natural para particionar el lote de
datos dado.

n II
Algoritmos y Programacio

Facultad de Ingeniera

78

3.23

Selecci
on Natural con buffers de tama
no 5

E1
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E2
66, 80, 89, 125, 187,
198, 201, 203, 247,
310

E3
159

E2

E3

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Cuadro 59: Fase final

a1
a2
a3
a4
a5
Sale

Nada

Nada

Nada

Nada

Nada

77

82

117

175
89

Nada
89

272
89

294
89
203

Nada
89
203
66

Nada
89
203
66
80

Nada
89
203
66
80
201
304
89
203
66
80
201
386
89
203
66
80
201
398
89
203
66
80
201
399

p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399}
66
89
203
198
80
201

80
89
203
198
187
201

89
125
203
198
187
201

125
247
203
198
187
201

187
247
203
198

201
159

Nada
247
203
198
310
201
159

198
247
203

310
201
159

201
247
203

310

159

203
247

310

159

247

310

159

310
159

Nueva partici
on! Se cierra la partici
on p2 = {66, 80, 89, 125, 187, 198, 201, 203, 247, 310}
159
Finaliza la u
ltima partici
on en p3 = {159}
b1
b2
b3
b4
b5

272

272
175

272
175
399

272
175
399
294

272
175
399
294
77
272
175
399
294
82
272
175
399
294
117
272
175
399
294
386
272

399
294
386
272
398
399
294
386
304
398
399
294
386
304
398
399

386
304
398
399

386
304
398
399

386
304
398
399

386

398
399

386

398
399

399

89
203
66
80
201
Nueva partici
on! Se cierra la partici
on

Enrique P. Calot

Entra
272
175
399
294
77
82
117
386
89
398
304
203
66
80
201
Nada
Nada
Nada
Nada

198
187
125
247
159
310
Nada
Nada
Nada
Nada
Nada

Nada

n II
Algoritmos y Programacio

3.24

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 5

Fases
0
1

c1
1
1

c2
0
1

P3

i=1 ci

c3
0
1

1
3

79

<3
Si
No

Cuadro 60: Calculo de la distribuci


on de columnas y dummies
E1
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E2
66, 80, 89, 125, 187,
198, 201, 203, 247,
310

E3
159

Cuadro 61: Fase 1


3.23.2.

Salida final

p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399};
p2 = {66, 80, 89, 125, 187, 198, 201, 203, 247, 310};
p3 = {159}.

3.24.

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no
5

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion natural.
3.24.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.
3.24.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 3 = 1 + 1 + 1 = 3 + 0. Por lo tanto es necesario repartir 3 particiones de las
cuales 0 son dummies (particiones vacas) y 3 son mis particiones de entrada.

3.25.

Selecci
on de reemplazo con buffer de tama
no 6

Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama


no 6.
3.25.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion de reemplazo para particionar el


lote de datos dado.

n II
Algoritmos y Programacio

Facultad de Ingeniera

80

3.25

Selecci
on de reemplazo con buffer de tama
no 6

E1
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E2
66, 80, 89, 125, 187,
198, 201, 203, 247,
310

E3
159

E2

E3

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Cuadro 62: Fase final


b1
b2
b3
b4
b5
b6

272

272
175

272
175
399

272
175
399
294

272
175
399
294
77

272
175
399
294
77
82
272
175
399
294
117
82
272
175
399
294
117
386
272
175
399
294
89
386
272
398
399
294
89
386
304
398
399
294
89
386
304
398
399
203
89
386
66
398
399
203
89
386
66
398
399
203
89
80
66
201
399
203
89
80
66
201
198
203
89
80
Nueva
partici
on!
Se
cierra
la
{77, 82, 117, 175, 272, 294, 304, 386, 398, 399}

Sale
Nada
Nada
Nada
Nada
Nada
Nada
77
82
117
175
272
294
304
386
398
399

Entra
272
175
399
294
77
82
117
386
89
398
304
203
66
80
201
198

partici
on

p1

66
187
201
198
203
89
80
80
187
201
198
203
89
125
89
187
201
198
203
247
125
125
187
201
198
203
247
159
159
187
201
198
203
247
310
187

201
198
203
247
310
198

201

203
247
310
201

203
247
310
203

247
310
247

310
310
Finaliza
la
u
ltima
partici
on
en
{66, 80, 89, 125, 159, 187, 198, 201, 203, 247, 310}

3.25.2.

187
125
247
159
310
Nada
Nada
Nada
Nada
Nada
Nada
p2

Salida final

p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399};
p2 = {66, 80, 89, 125, 159, 187, 198, 201, 203, 247, 310}.
Enrique P. Calot

n II
Algoritmos y Programacio

3.26

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer tama
no 6

Fases
0
1

c1
1
1

c2
0
1

c3
0
1

P3

i=1 ci

1
3

81

<2
Si
No

Cuadro 63: Calculo de la distribuci


on de columnas y dummies
E1
D

E2
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E3
66, 80, 89, 125, 159,
187, 198, 201, 203,
247, 310

Cuadro 64: Fase 1

3.26.

Merge Polif
asico de las salidas por selecci
on de reemplazo de buffer
tama
no 6

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion de reemplazo.

3.26.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.

3.26.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 3 = 1 + 1 + 1 = 2 + 1. Por lo tanto es necesario repartir 3 particiones de las
cuales 1 son dummies (particiones vacas) y 2 son mis particiones de entrada.

3.27.

Selecci
on Natural con buffers de tama
no 6

Desarrollar el algoritmo de seleccion natural con buffers de tama


no 6.

3.27.1.

Desarrollo

A continuacion se presenta el desarrollo del algoritmo de seleccion natural para particionar el lote de
datos dado.

n II
Algoritmos y Programacio

Facultad de Ingeniera

82

3.27

Selecci
on Natural con buffers de tama
no 6

E1
D

E2
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E3
66, 80, 89, 125, 159,
187, 198, 201, 203,
247, 310

E2

E3

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Cuadro 65: Fase final


b1
b2
b3
b4
b5
b6
a1
a2
a3
a4
a5
a6

272

272
175

272
175
399

272
175
399
294

272
175
399
294
77

272
175
399
294
77
82

272
175
399
294
117
82

272
175
399
294
117
386

272
175
399
294

386
89

272
175
399
294
398
386
89

272
304
399
294
398
386
89

304
399
294
398
386
89
203

304
399
294
398
386
89
203
66

304
399
294
398
386
89
203
66
80

304
399
294
398
386
89
203
66
80
201

304
399
294
398
386
89
203
66
80
201
198

304
399

398
386
89
203
66
80
201
198

399

398
386
89
203
66
80
201
198

399

398

89
203
66
80
201
198

399

89
203
66
80
201
198
89
203
66
80
201
198

Nueva partici
on! Se cierra la partici
on p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399}
89
203
187
80
89
203
187
125
247
203
187
125
247
203
187
159
247
203
187
310
247
203

310
247
203

310
247
203

310
247

310

310
Finaliza la u
ltima partici
on

3.27.2.

201
198

201
198

201
198

201
198

201
198

201
198

201

en p2 = {66, 80, 89, 125, 159, 187, 198, 201, 203, 247, 310}

Sale
Nada
Nada
Nada
Nada
Nada
Nada
77
82
117
Nada
175
272
Nada
Nada
Nada
Nada
294
304
386
398
399

Entra
272
175
399
294
77
82
117
386
89
398
304
203
66
80
201
198
Nada
Nada
Nada
Nada
Nada

66
80
89
125
159
187
198
201
203
247
310

187
125
247
159
310
Nada
Nada
Nada
Nada
Nada
Nada

Salida final

p1 = {77, 82, 117, 175, 272, 294, 304, 386, 398, 399};
Enrique P. Calot

n II
Algoritmos y Programacio

3.28

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no 6

Fases
0
1

c1
1
1

c2
0
1

c3
0
1

P3

i=1 ci

1
3

83

<2
Si
No

Cuadro 66: Calculo de la distribuci


on de columnas y dummies

E1
D

E2
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E3
66, 80, 89, 125, 159,
187, 198, 201, 203,
247, 310

Cuadro 67: Fase 1

p2 = {66, 80, 89, 125, 159, 187, 198, 201, 203, 247, 310}.

3.28.

Merge Polif
asico de las salidas por selecci
on natural de buffers tama
no
6

Desarrollar todas las fases del algoritmo de merge polif


asico para 3 vas de entrada con las particiones
obtenidas de la salida del algoritmo de seleccion natural.

3.28.1.

C
alculo de la distribuci
on de columnas y dummies

A continuacion se presenta el calculo para obtener la distribuci


on de entrada de las particiones y saber
cuantas particiones dummy seran necesarias incorporar.

3.28.2.

Distribuci
on inicial

Una vez encontrados los n


umeros de Fibonacci se comienza a distribuir de la siguiente forma: c1 +
c2 + c3 = total + dummies = 3 = 1 + 1 + 1 = 2 + 1. Por lo tanto es necesario repartir 3 particiones de las
cuales 1 son dummies (particiones vacas) y 2 son mis particiones de entrada.

n II
Algoritmos y Programacio

Facultad de Ingeniera

84

3.29

E1
D

E2
77, 82, 117, 175, 272,
294, 304, 386, 398,
399

E3
66, 80, 89, 125, 159,
187, 198, 201, 203,
247, 310

E2

E3

Bubble Sort ascendente

S
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399
E1
66, 77, 80, 82, 89,
117, 125, 159, 175,
187, 198, 201, 203,
247, 272, 294, 304,
310, 386, 398, 399

Cuadro 68: Fase final

3.29.

Bubble Sort ascendente

3.29.1.

Desarrollo

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

19/20

175 272 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310 399

15/19

175 272 77 82 117 294 89 386 304 203 66 80 201 198 187 125 247 159 310 398 399

15/18

175 77 82 117 272 89 294 304 203 66 80 201 198 187 125 247 159 310 386 398 399

13/17

77 82 117 175 89 272 294 203 66 80 201 198 187 125 247 159 304 310 386 398 399

10/16

77 82 117 89 175 272 203 66 80 201 198 187 125 247 159 294 304 310 386 398 399

10/15

77 82 89 117 175 203 66 80 201 198 187 125 247 159 272 294 304 310 386 398 399

7/14

77 82 89 117 175 66 80 201 198 187 125 203 159 247 272 294 304 310 386 398 399

6/13

77 82 89 117 66 80 175 198 187 125 201 159 203 247 272 294 304 310 386 398 399

5/12

77 82 89 66 80 117 175 187 125 198 159 201 203 247 272 294 304 310 386 398 399

4/11

10

77 82 66 80 89 117 175 125 187 159 198 201 203 247 272 294 304 310 386 398 399

4/10

11

77 66 80 82 89 117 125 175 159 187 198 201 203 247 272 294 304 310 386 398 399

2/9

12

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/8

13

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/7

14

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/6

15

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/5

16

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/4

17

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/3

18

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/2

19

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/1

20

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/0

Enrique P. Calot

n II
Algoritmos y Programacio

3.30

Bubble Sort descendente

3.30.

Bubble Sort descendente

3.30.1.

Desarrollo

85

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

17/20

272 399 294 175 82 117 386 89 398 304 203 77 80 201 198 187 125 247 159 310 66

16/19

399 294 272 175 117 386 89 398 304 203 82 80 201 198 187 125 247 159 310 77 66

11/18

399 294 272 175 386 117 398 304 203 89 82 201 198 187 125 247 159 310 80 77 66

11/17

399 294 272 386 175 398 304 203 117 89 201 198 187 125 247 159 310 82 80 77 66

11/16

399 294 386 272 398 304 203 175 117 201 198 187 125 247 159 310 89 82 80 77 66

10/15

399 386 294 398 304 272 203 175 201 198 187 125 247 159 310 117 89 82 80 77 66

8/14

399 386 398 304 294 272 203 201 198 187 175 247 159 310 125 117 89 82 80 77 66

3/13

399 398 386 304 294 272 203 201 198 187 247 175 310 159 125 117 89 82 80 77 66

2/12

399 398 386 304 294 272 203 201 198 247 187 310 175 159 125 117 89 82 80 77 66

2/11

10

399 398 386 304 294 272 203 201 247 198 310 187 175 159 125 117 89 82 80 77 66

2/10

11

399 398 386 304 294 272 203 247 201 310 198 187 175 159 125 117 89 82 80 77 66

2/9

12

399 398 386 304 294 272 247 203 310 201 198 187 175 159 125 117 89 82 80 77 66

1/8

13

399 398 386 304 294 272 247 310 203 201 198 187 175 159 125 117 89 82 80 77 66

1/7

14

399 398 386 304 294 272 310 247 203 201 198 187 175 159 125 117 89 82 80 77 66

1/6

15

399 398 386 304 294 310 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

1/5

16

399 398 386 304 310 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

1/4

17

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/3

18

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/2

19

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/1

20

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/0

n II
Algoritmos y Programacio

Facultad de Ingeniera

86

3.31

3.31.

Bilateral Bubble Sort ascendente

3.31.1.

Desarrollo

Bilateral Bubble Sort ascendente

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

19/20

175 272 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310 399

15/20

66 175 272 294 77 82 117 386 89 398 304 203 80 125 201 198 187 159 247 310 399

14/18

66 175 272 77 82 117 294 89 386 304 203 80 125 201 198 187 159 247 310 398 399

12/18

66 77 175 272 80 82 117 294 89 386 304 203 125 159 201 198 187 247 310 398 399

13/16

66 77 175 80 82 117 272 89 294 304 203 125 159 201 198 187 247 310 386 398 399

8/16

66 77 80 175 82 89 117 272 125 294 304 203 159 187 201 198 247 310 386 398 399

10/14

66 77 80 82 89 117 175 125 272 294 203 159 187 201 198 247 304 310 386 398 399

5/14

66 77 80 82 89 117 125 175 159 272 294 203 187 198 201 247 304 310 386 398 399

6/12

66 77 80 82 89 117 125 159 175 272 203 187 198 201 247 294 304 310 386 398 399

2/12

10

66 77 80 82 89 117 125 159 175 187 272 203 198 201 247 294 304 310 386 398 399

4/10

11

66 77 80 82 89 117 125 159 175 187 203 198 201 247 272 294 304 310 386 398 399

1/10

12

66 77 80 82 89 117 125 159 175 187 198 203 201 247 272 294 304 310 386 398 399

1/8

13

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/8

14

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/6

15

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/6

16

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/4

17

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/4

18

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/2

19

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/2

20

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

0/0

Enrique P. Calot

n II
Algoritmos y Programacio

3.32

Bilateral Bubble Sort descendente

3.32.

Bilateral Bubble Sort descendente

3.32.1.

Desarrollo

87

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

17/20

272 399 294 175 82 117 386 89 398 304 203 77 80 201 198 187 125 247 159 310 66

17/20

399 272 398 294 175 82 117 386 89 310 304 203 77 80 201 198 187 125 247 159 66

15/18

399 398 294 272 175 117 386 89 310 304 203 82 80 201 198 187 125 247 159 77 66

12/18

399 398 386 294 272 175 117 310 89 304 247 203 82 80 201 198 187 125 159 77 66

9/16

399 398 386 294 272 175 310 117 304 247 203 89 82 201 198 187 125 159 80 77 66

7/16

399 398 386 310 294 272 175 304 117 247 203 201 89 82 198 187 159 125 80 77 66

8/14

399 398 386 310 294 272 304 175 247 203 201 117 89 198 187 159 125 82 80 77 66

5/14

399 398 386 310 304 294 272 247 175 203 201 198 117 89 187 159 125 82 80 77 66

6/12

399 398 386 310 304 294 272 247 203 201 198 175 117 187 159 125 89 82 80 77 66

2/12

10

399 398 386 310 304 294 272 247 203 201 198 187 175 117 159 125 89 82 80 77 66

2/10

11

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/10

12

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/8

13

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/8

14

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/6

15

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/6

16

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/4

17

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/4

18

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/2

19

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/2

20

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

0/0

n II
Algoritmos y Programacio

Facultad de Ingeniera

88

3.33

3.33.

Selection Sort ascendente

3.33.1.

Desarrollo

Selection Sort ascendente

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

1/20

66 175 399 294 77 82 117 386 89 398 304 203 272 80 201 198 187 125 247 159 310

1/19

66 77 399 294 175 82 117 386 89 398 304 203 272 80 201 198 187 125 247 159 310

1/18

66 77 80 294 175 82 117 386 89 398 304 203 272 399 201 198 187 125 247 159 310

1/17

66 77 80 82 175 294 117 386 89 398 304 203 272 399 201 198 187 125 247 159 310

1/16

66 77 80 82 89 294 117 386 175 398 304 203 272 399 201 198 187 125 247 159 310

1/15

66 77 80 82 89 117 294 386 175 398 304 203 272 399 201 198 187 125 247 159 310

1/14

66 77 80 82 89 117 125 386 175 398 304 203 272 399 201 198 187 294 247 159 310

1/13

66 77 80 82 89 117 125 159 175 398 304 203 272 399 201 198 187 294 247 386 310

1/12

66 77 80 82 89 117 125 159 175 398 304 203 272 399 201 198 187 294 247 386 310

1/11

10

66 77 80 82 89 117 125 159 175 187 304 203 272 399 201 198 398 294 247 386 310

1/10

11

66 77 80 82 89 117 125 159 175 187 198 203 272 399 201 304 398 294 247 386 310

1/9

12

66 77 80 82 89 117 125 159 175 187 198 201 272 399 203 304 398 294 247 386 310

1/8

13

66 77 80 82 89 117 125 159 175 187 198 201 203 399 272 304 398 294 247 386 310

1/7

14

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 304 398 294 399 386 310

1/6

15

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 304 398 294 399 386 310

1/5

16

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 398 304 399 386 310

1/4

17

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 398 399 386 310

1/3

18

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 399 386 398

1/2

19

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 399 398

1/1

20

66 77 80 82 89 117 125 159 175 187 198 201 203 247 272 294 304 310 386 398 399

1/0

Enrique P. Calot

n II
Algoritmos y Programacio

3.34

Selection Sort descendente

3.34.

Selection Sort descendente

3.34.1.

Desarrollo

89

272 175 399 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

1/20

399 175 272 294 77 82 117 386 89 398 304 203 66 80 201 198 187 125 247 159 310

1/19

399 398 272 294 77 82 117 386 89 175 304 203 66 80 201 198 187 125 247 159 310

1/18

399 398 386 294 77 82 117 272 89 175 304 203 66 80 201 198 187 125 247 159 310

1/17

399 398 386 310 77 82 117 272 89 175 304 203 66 80 201 198 187 125 247 159 294

1/16

399 398 386 310 304 82 117 272 89 175 77 203 66 80 201 198 187 125 247 159 294

1/15

399 398 386 310 304 294 117 272 89 175 77 203 66 80 201 198 187 125 247 159 82

1/14

399 398 386 310 304 294 272 117 89 175 77 203 66 80 201 198 187 125 247 159 82

1/13

399 398 386 310 304 294 272 247 89 175 77 203 66 80 201 198 187 125 117 159 82

1/12

399 398 386 310 304 294 272 247 203 175 77 89 66 80 201 198 187 125 117 159 82

1/11

10

399 398 386 310 304 294 272 247 203 201 77 89 66 80 175 198 187 125 117 159 82

1/10

11

399 398 386 310 304 294 272 247 203 201 198 89 66 80 175 77 187 125 117 159 82

1/9

12

399 398 386 310 304 294 272 247 203 201 198 187 66 80 175 77 89 125 117 159 82

1/8

13

399 398 386 310 304 294 272 247 203 201 198 187 175 80 66 77 89 125 117 159 82

1/7

14

399 398 386 310 304 294 272 247 203 201 198 187 175 159 66 77 89 125 117 80 82

1/6

15

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 77 89 66 117 80 82

1/5

16

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 66 77 80 82

1/4

17

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 66 77 80 82

1/3

18

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 77 80 66

1/2

19

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

1/1

20

399 398 386 310 304 294 272 247 203 201 198 187 175 159 125 117 89 82 80 77 66

1/0

n II
Algoritmos y Programacio

Facultad de Ingeniera

Algoritmos y Programaci
on II C
atedra Lic. Gustavo Carolo
Evaluaci
on Integradora 2014-07-07
Entregar teora y pr
actica por separado Leer bien el enunciado
Nombre: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Padr
on: . . . . . . . . . . . .

Mail: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cuat.: . . . . . . . . . . . .

Teora Tema 1
Dado el siguiente lote de datos:
272, 175, 399, 294, 77 , 82, 117, 386 , 89 , 398, 304 , 203, 66, 80, 201, 198 , 187,
125 , 247, 159, 310
Se pide:
a. Desarrollar los algoritmos de Heap Sort en orden ascendente (hacer al menos 1 swapdown), Radix Sort en
orden ascendente (entero) y Quick Sort (hacer al menos 2 niveles de recursividad).
b. Procesar el B-tree de m = 2 resultante de ingresar los elementos del lote en el orden dado y luego eliminar
los siguientes:
201, 198 , 247

Mostrar los resultados parciales tras insertar o eliminar un elemento marcado con .
c. Desarrollar el algoritmo de seleccion de reemplazo con un buffer de tama
no 4.
d. Un software recibe como entrada un arreglo completo semi-ordenado de p elementos de tipo tElem, se sabe
que s
olo hay tres elementos fuera de su lugar (no se sabe cu
ales), el software es ejecutado en una maquina
con una memoria interna comparable a 2p2 sizeof (tElem). Dispone de las siguientes soluciones:
a) Sort externo: seleccion de reemplazo (se asume M 3) y merge polif
asico
b) Sort externo: seleccion natural (se asume M 3) y merge polif
asico
c) Sort externo: quick sort de pivoteo en el primer elemento sobre particiones de
polif
asico

p
2

elementos y merge

d ) Sort interno: quick sort de pivoteo en el primer elemento


e) Sort interno: quick sort de pivoteo en el u
ltimo elemento
f ) Sort interno: bubble sort bilateral (recorre en ambos sentidos y tiene un flag para cortar si no hay
intercambios)
g) Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el padre
es mayor a los hijos)
h) Sort interno: heap sort (se asume que el orden es ascendente y en todos los nodos del heap el padre
es menor a los hijos)
i ) Sort interno: selection sort
cu
al de todas implementara? Justifique su elecci
on.
e. Desarrollar 2 fases del algoritmo de merge polif
asico para 3 vas de entrada con 21 particiones ordenadas
tomadas del lote de datos.

También podría gustarte