Algoritmo al poder Autores: Karen Huánuco Huayanay

Slides:



Advertisements
Presentaciones similares
Recorridos Iterativos y Recursivos
Advertisements

Ordenación rápida (QuickSort)
Mergesort como ejemplo de Divide y Vencerás
METODO DE ORDENAMIENTO POR SELECCIÓN.
Recurrencia Programación II 3-4 de febrero de 2009.
M.C. Yalu Galicia Hdez. (FCC/BUAP)
Complejidad Programación II de febrero de 2009.
Algoritmos para Ordenar datos
Divide y vencerás 1. Método general.
1 Quicksort Agustín J. González ELO320: Estructura de Datos y Algoritmos 1er. Sem
Merge Sort.
1 Ordenamiento en tiempo lineal y Estadísticas de orden Agustín J. González ELO320: Estructura de Datos y Algoritmos 1er. Sem 2002.
Algoritmos de Ordenamiento y Complejidad
Parte I. Estructuras de Datos.
1 Quicksort Agustín J. González ELO320: Estructura de Datos y Algoritmos 1er. Sem
ELO3201 Análisis de Algoritmos (cont.) Agustín J. González ELO320 1º sem 2002.
Oscar F. Bedoya L. Fundamentos de análisis y diseño de algoritmos.
Ordenamiento en lenguaje c
Quick Sort Estructuras de Datos Universidad Autónoma de Tlaxcala Unidad Académica Multidisciplinaria 14 de Septiembre de 2012.
ANGULOS EN LA CIRCUNFERENCIA
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Caso.
L ENGUAJE DE E SPECIFICACIÓN Algoritmos y Estructuras de Datos I Especificación – Práctica 2 AEDI Especificación – Práctica 2 1.
1 Ordenando. 2 Sorting Input Una secuencia de numeros a 1, a 2, a 3, …, a n Output Una permutación (reorden) a’ 1, a’ 2, a’ 3, …, a’ n de la input, tal.
Introducción a la Programación Orientada a Objetos Ordenamiento Ordenar una estructura de datos consiste en reacomodar sus elementos de manera tal que.
Estructura organizacional Manejo de equipo Condiciones externas impuestas al grupo. Recursos de los miembros del grupo. Estructura del grupo. Proceso.
ORDENACIÓN DE LOS ELECTRONES EN EL ÁTOMO Curso: Primero medio Asignatura: Química Profesora: Carmen Damke Álvarez.
Localización de una sola instalación métodos cuantitativos.
¡BIENVENIDOS! PROF. CARLOS JOSÉ LUIS CARRILLO PÉREZ.
Estructuras de Datos ● Introducción y Heaps ● Docentes: ● Eugenia Simich ● Juan Manuel Rabasedas ● Sergio Giro.
EMPRESA CHICA EMPRESA MEDIANA. EMPRESA GRANDE.
Autor: Juan Rosillo Haro
Olimpiadas Chilenas de Informática - Formación
Ingeniería en Sistemas
PARTE II: ALGORÍTMICA Tema 5. Programación dinámica.
El celular en los parciales SI o NO
Métodos en Java.
Complejidad Programación II de febrero de 2009.
Unidad 3: Eficiencia de Algoritmos Tema VI: Ordenamiento.
Paul Leger Ejercicios Pruebas Paul Leger
TALLER Nº2: Modelo de Distribución de Viajes
Integrantes, María Ruth Parra Méndez Johanna Patricia Peña Orrego
Fundamentos de programación Miriam Hernández Escutia
Tele clase 5 Sistemas de ecuaciones lineales.
Procedimientos y Funciones
HISTORIA El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el.
OFDM óptimo para smart grid
FUNCIONES, MATRICES Y DETERMINANTES
Método de la bisección Se trata de encontrar los ceros de f(x) = 0
Estructura de Datos Ingeniería en Informática. Universidad Carlos III de Madrid 1 Tema 3: Complejidad.
Procedimiento Protocolo para PCA UNIVERSIDAD DE LOS ANDES-IDEAM.
Raíz Cuadrada Perfectas
Divide y vencerás 1. Método general.
Ensamblador MC Beatriz Beltrán Martínez
Curso de Programación Estructurada
Ordenamiento: Quick Sort
FUNCIÓN INVERSA.
Tema 7 Arreglos Parte 3.
Diseño de algoritmos.
Estructuras de Control
2/22/2019 SISTEMAS NO LINEALES.
METODOS DE ORDENAMIENTO CHRISTIAN MICHAEL OBANDO GARCES JOAO ADRIAN BARIONUEVO.
Hacer 4 series de 20 segundos (mantener esa posicion) Hacer 4 series de 20 segundos (mantener esa posición) Hacer.
Nelson Baloian, José A. Pino
Algoritmo de eliminacion gaussiana con pivoteo escalado de columna
METODOS DE ORDENAMIENTO
LOGICA INTERACTIVA USO DEL HACER PARA Engloba un grupo de instrucciones HACER PARA [I] = 1 a 10 Es la única de las repetitivas que no depende de una expresion.
Puntuaciones brutas y transformadas
La diferencial.
ALGORITMO DE ORDENAMIENTO POR BURBUJA. El método de la burbuja es uno de los mas simples, es tan fácil como comparar todos los elementos de una lista.
PROCEDIMIENTO RESULTADO.
Transcripción de la presentación:

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

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

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

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

Resultado final 3 4 8 10 12 16 45 58

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]  10000000.0 Para i0 hasta n2-1 hacer C[i]  A[med + 1 + i] C[n2]  10000000.0 0 1 2 3 4 5 6 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

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)

Mediana de medianas

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

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

Comparación