Merge Sort | Ordenamiento por mezcla

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ก.ค. 2024
  • Merge Sort o el ordenamiento por mezcla es uno de los algoritmos de ordenamiento clásicos para estudiar el patron de diseño de divide y vencerás.
    Es un algoritmo recursivo que tiene una complejidad de O(n log(n)).
    En este video explico el algoritmo y muestro su implementación usando Python.
    Contenido:
    0:00 Intro
    0:31 Explicación general
    1:33 Ejemplo Cartas
    4:00 Código
    7:13 Análisis complejidad
    Libros recomendados:
    kit.co/schiob
    Apóyame con una pizza:
    www.buymeacoffee.com/schiob
    Para contenido atrás de cámara y fotos de comida sígueme en:
    / schiob
    / schiob
    github.com/schiob

ความคิดเห็น • 31

  • @realdiegor
    @realdiegor ปีที่แล้ว +7

    Amigo, ya he visto como 4 videos de hasta distintas fuentes sobre este algoritmo, y de lejos usted dio la mejor explicación. Gracias de verdad, te mereces más crecimiento en YT

  • @cabreracostaderekelliot2835
    @cabreracostaderekelliot2835 ปีที่แล้ว +1

    Excelente explicación, muchas gracias

  • @joseleonfaneite5865
    @joseleonfaneite5865 2 ปีที่แล้ว +1

    epale que bueno que retomaste los videos jejeje no te pierdas tanto son muy bueno tus videos

  • @leanderp
    @leanderp 2 ปีที่แล้ว

    Excelente explicación ! Saludos

  • @silvinagriselcantello8363
    @silvinagriselcantello8363 7 หลายเดือนก่อน

    Un excelente profe!!!! Me has ayudado en toda la materia a entender esto que parecia imposible al comienzo, Gracias!

  • @magdielburdiles.2000
    @magdielburdiles.2000 5 หลายเดือนก่อน

    Gracias, me sirvió el video para entender mejor un aspecto del algoritmo

  • @PasterDEU
    @PasterDEU 2 ปีที่แล้ว

    tiempo sin verte chio, jajajjajaj espero verte mas seguido

  • @arnauserra1556
    @arnauserra1556 2 ปีที่แล้ว

    Muy bien explicado!👍

    • @ChioCode
      @ChioCode  2 ปีที่แล้ว

      Muchas gracias!!

  • @FranchescoVirgolini-fn9nh
    @FranchescoVirgolini-fn9nh 3 หลายเดือนก่อน

    6:30 era esto lo que no entendia, gracias : )

  • @AntonioSanchez-bi3nu
    @AntonioSanchez-bi3nu ปีที่แล้ว

    Hermoso!

  • @vainboy6980
    @vainboy6980 ปีที่แล้ว

    Muy buen video

  • @rosmeryapazaccapa3404
    @rosmeryapazaccapa3404 2 ปีที่แล้ว

    excelente!!

  • @DobleSpock
    @DobleSpock 7 หลายเดือนก่อน +1

    Buen video bb

  • @jabesacuna4498
    @jabesacuna4498 2 ปีที่แล้ว

    Chio me podrías ayudar con la estabilidad y los requerimientos de memoria de merge sort tengo una exposición mañana amigo!

  • @HSaldana3
    @HSaldana3 3 หลายเดือนก่อน +1

    En la explicación dada, encontré algunas lagunas de cómo se hacen las cosas, es decir, no se explica a detalle el funcionamiento del algoritmo, sino más bien, se dan las ideas generales de la técnica, pero a la hora de resolver un caso especifico, quedan sin explicar algunos puntos clave, que supongo se le dejan al espectador para que él por cuenta propia los investigue. Así, esta explicación, aunque buena para algunos, para otros es insuficiente y obscura en algunos puntos.

  • @ballesteros674
    @ballesteros674 ปีที่แล้ว

    Buenas Chio!, la impresion del arreglo donde iria?

  • @AltoViajeBlog
    @AltoViajeBlog ปีที่แล้ว +1

    Entiendo cómo funciona el algoritmo, pero no entiendo en qué parte de esa fórmula se ordenaron las subarrays. Me lo podrías explicar? Gracias!

  • @kvelez
    @kvelez ปีที่แล้ว

    Cool

  • @canaima3210
    @canaima3210 2 หลายเดือนก่อน

    una pregunta, al subdividir el array inicial en dos arrays, uno que va desde el elemento 0 hasta el elemento que está en el medio y el otro array desde el elemento del medio hasta el último elemento, no estarías duplicando el elemento que está en el medio?

  • @jesusbeltran3899
    @jesusbeltran3899 8 หลายเดือนก่อน

    Me queda una pequeña duda sobre la complejidad temporal en el mejor de los casos y en el peor de los casos. Es decir, por ejemplo, se podría decir que en el mejor de los casos estamos ordenando un arreglo de una sola posición por lo cual no entra en juego a recursividad (Aunque esto también podría decir que es un caso invalido para el tema del ordenamiento). Como se interpreta ese concepto de "Mejor de los Casos" y "Peor de los Casos". Pensaría que es solamente se considera un arreglo de más de una posición ordenado ascendente = "Mejor de los Casos" y un arreglo de más de una posición descendente = "Peor de los casos". ¿Me podrías apoyar a aclarar ese punto?

  • @S4z4kku
    @S4z4kku 2 ปีที่แล้ว

    Gracias Chío, entendí más que lo que me enseñaron en la U jajaja

  • @ArielAG19
    @ArielAG19 ปีที่แล้ว +2

    Cuando se divide el arreglo se hace de cualquier forma ? O hay alguna regla para ello?
    Por ejemplo si yo dividia ese arreglo del inicio en 8-7-9 y 2-4 daba igual?

    • @alanmercado7725
      @alanmercado7725 8 หลายเดือนก่อน +1

      Pues si el propio método está bien implementado, no debería de haber problema 👍

  • @gatovsky
    @gatovsky ปีที่แล้ว +1

    So yo también quiero ser desarrollador backend y diseño de arquitectura de software y sistemas distribuidos que debo estudiar?

    • @ChioCode
      @ChioCode  ปีที่แล้ว +1

      Hola Gatovsky, justo tengo un videito del path de un programador backend, de ahí puedes seguir a ver temas de diseño y arquitectura. Lo que si es que es todo un camino así que no te desanimes y continua estudiando :)

  • @efrenhernandez6343
    @efrenhernandez6343 2 ปีที่แล้ว

    Chale, la parte de mezclar es la que más se me dificulta con este algoritmo

  • @yersonochoa17
    @yersonochoa17 19 วันที่ผ่านมา

    Se ve relativamente más facil en python, en java es algo más complejo

  • @eR1cK92
    @eR1cK92 ปีที่แล้ว

    Este algoritmo no lo tienes en la lista de algoritmos, para que lo incluyas , ais es mas fácil ver todo el contenido relacionado y cambiale la letra a la formula del big O recursivo no se ve nada xD pd : esa funcion merge si esta enrredadilla eje , Gracis!

    • @ChioCode
      @ChioCode  ปีที่แล้ว +1

      Gracias por el feedback, voy a agregarlos también a la lista de algoritmos :)