Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Merge Sort

11,471 views

Published on

Algoritmos computacionales
Dra. Elisa Schaeffer

Published in: Technology
  • Be the first to comment

Merge Sort

  1. 1. Ordenamiento de Mezcla<br />Dra. Elisa Schaeffer<br />Algoritmos Computacionales<br />Humberto Treviño Delgado 1495798<br />
  2. 2. MERGE SORT<br /> El ordenamiento del que hablaremos hoy, será el de Mezcla (mergesort), este es destacado por su técnica: divide y vencerás. <br />
  3. 3. DESCRIPCION<br />Este ordenamiento fue desarrollado en 1945 por John Von Neumann<br />Mergesort es un ordenamiento estable, paraleliza mejor, y es más eficiente manejando medios secuenciales de acceso lento.<br />Mergesort es a menudo la mejor opción para ordenar una lista enlazada.<br />
  4. 4. DESCRIPCION<br />Es fácil implementar mergesort de manera que sólo requiera Θ(1) espacio extra, y el mal rendimiento de las listas enlazadas ante el acceso aleatorio hace que otros algoritmos (como quicksort) den un bajo rendimiento, y para otros (como heapsort) sea algo imposible.<br />
  5. 5. COMPLEJIDAD<br />El ordenamiento merge sortes de complejidad O(nlogn).<br />
  6. 6. Mergesort<br />Para empezar a entender un poco mejor el ordenamiento de mezcla observemos la animación.<br />
  7. 7. Mergesort<br />Como pudimos ver en la imagen , lo que hace este metodo, es divir en 2 partes el arreglo, despues en otras 2 y asi hasta tener los elementos separados. Comparamos los elementos y escribimos el menor. Volvemos a comparar y asi hasta tener nuestro arreglo acomodado.<br />
  8. 8. Mergesort<br />Para entender mejor lo anterior hay que observar la imagen y la animacion.<br />
  9. 9. Mergesort<br />Divide y venceras<br />
  10. 10. Pseudocódigo<br /> Existen diversos lenguajes en los que se puede programar este ordenamiento, mas adelante esta nuestro código escrito en C.<br />
  11. 11. Aplicaciones del MergeSort<br /> El ordenamiento de mezcla (mergesort) puede ser utilizado para:<br />●Para correr cintas magnéticas como dispositivos de entrada y salida, requiere muy poca memoria, y la memoria que requiere no depende del numero de grabaciones.<br />
  12. 12. Los algoritmos de ordenamiento de mezcla permitieron a juegos de datos grandes para ser clasificados para los tempranos ordenadores que tenían pequeñas memorias de acceso arbitrarias por normas modernas. Los registros fueron almacenados sobre la cinta magnética y procesados sobre los bancos de unidades de cinta magnética magnéticas, como esta IBM 729s.<br />
  13. 13. AnalisisAsintotico<br />La relación de recurrencia del algoritmo es T(1) = 1, T(n) = 2 T(n/2) + n, cuya solución es T(n) = n lg n.<br />Suponiendo que se tiene un arreglo de 8 elementos, se ordenan los 4 elementos de cada arreglo y luego se mezclan. El arreglo de 4 elementos, se ordenan los 2 elementos de cada arreglo y luego se mezclan. El arreglo de 2 elementos, como cada arreglo sólo tiene n = 1 elemento, solo se mezclan.<br />
  14. 14. Ejemplos (animaciones)<br />
  15. 15. Ejemplos (animaciones)<br />
  16. 16. Referencias<br />http://sistemas.ing.ula.ve/pr3/unidad_1/actividad/actividad2_6.html<br />http://es.wikipedia.org/wiki/Ordenamiento_por_mezcla<br />http://en.wikipedia.org/wiki/Merge_sort<br />

×