La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Algoritmo al poder Autores: Karen Huánuco Huayanay

Presentaciones similares


Presentación del tema: "Algoritmo al poder Autores: Karen Huánuco Huayanay"— Transcripción de la presentación:

1 Algoritmo al poder Autores: Karen Huánuco Huayanay 20132952
Maricielo Linares Méndez Oscar Ashtu Peña Carlos Carrillo Arroyo

2 Bubble Sort // A es el vector y n es el número de elementos Procedimiento intercambiar (A, i, j+1) aux = A[i] A[i] = A[j] A[j] = aux Fin Procedimiento BubbleSort(A,n) Para i0 hasta n-2 hacer // n-1 recorridos Para j0 hasta n-2-i hacer Si A[j+1] < A[j] entonces // si no están en orden intercambiar A[j] y A[j+1] Fin Si Fin Para

3 Bubble Sort Iteración 1 12 8 3 4 16 58 10 45 12 8 3 4 16 58 10 45 8 12 3 4 16 58 10 45 8 3 12 4 16 58 10 45 8 3 4 12 16 58 10 45 8 3 4 12 16 58 10 45 8 3 4 12 16 58 10 45 8 3 4 12 16 10 58 45 8 3 4 12 16 10 45 58

4 Iteración 2 8 3 4 12 16 10 45 58 8 3 4 12 16 10 45 58 3 8 4 12 16 10 45 58 3 4 8 12 16 10 45 58 3 4 8 12 16 10 45 58 3 4 8 12 16 10 45 58 3 4 8 12 10 16 45 58 3 4 8 12 10 16 45 58 3 4 8 12 10 16 45 58

5 Resultado final 3 4 8 10 12 16 45 58

6 p0 q0 Para i  0 hasta (n1+n2)-1 hacer Si (B[p] < C[q]) entonces A[ini + i]  B[p] p p+1 Sino A[ini + i]  C[q] q q+1 Fin Si Fin Para Fin Merge Sort Procedimiento mergesort( A, ini, fin) Si (ini = fin) entonces retorna; Fin si med  (fin+ini)/2 mergesort(A, ini, med) mergesort(A, med+1, fin) merge(A, ini, med, fin) Fin Procedimiento merge( A, ini, med, fin) n1  med - ini + 1 n2  fin - med Para i0 hasta n1-1 hacer B[i]  A[ini +i] Fin Para B[n1]  Para i0 hasta n2-1 hacer C[i]  A[med i] C[n2] 

7 Mediana de medianas Funcion Particion (A, ini, fin, pivote) Para i  ini hasta fin hacer aux  A[i] Si (aux = pivote) entonces retorna; Fin si Fin para intercambiar(A, i, fin) i ini Para j  ini hasta fin-1 hacer aux  A[j] Si (aux <= pivote) entonces intercambiar(A, i, j); i++; retornar i Fin función Funcion MedianaDeMedianas (A, ini, fin, k) n  fin - ini + 1 Para i  0 hasta n/5 hacer t  ini + i * 5 OrdenarArreglo(A, t, t+5) medianas[ í ] = A[t+2] medDeMed = MedianaDeMedianas(medianas, 0, i-1, i/2)   posicion = Particion (A, ini, fin, medDeMed) Si posicion = k retornar A[pos] Fin si Si posicion > k retornar MedianaDeMedianas (A, ini,pos-1, k) Si posicion < k retornar MedianaDeMedianas (A, pos+1, fin, k-posicion+ini-1) Fin función

8 Mediana de medianas A = (2, 5, 9, 19, 24, 54, 5, 87, 9, 10, 44, 32, 21, _____13, 24, 18, 26, 16, 19, 25, 39, 47, 56, 71)

9 Mediana de medianas

10 Mediana de medianas A = (2, 5, 9, 5, 9, 10, 2, 13, 4, 16, 18, 19, 24, 54, , 21, 32, 44, 19, 26, 25, 39, 47, 56, 71)

11 Tabla Comparativa de Tiempos
100 1000 10 000 Bubble Sort 0.000 0.4220 47.031 Merge Sort 0.031 Mediana de medianas Bubble Sort Merge Sort 0.469 5.140 Mediana de medianas 0.125 1.204

12 Comparación


Descargar ppt "Algoritmo al poder Autores: Karen Huánuco Huayanay"

Presentaciones similares


Anuncios Google