Aprende Divide y Vencerás | Subarreglo Máximo | Diseño de Algoritmos

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ก.ค. 2024
  • Divide y Vencerás es uno de los paradigmas de diseño de algoritmos más útiles allá afuera. Tiene un principio recursivo y puede hacer algoritmos mucho más eficientes.
    En este video veremos el clásico problema del Subarreglo máximo explicándo su solución de Divide y Vencerás.
    Introducción a Algoritmos (Inglés):
    - amzn.to/3bcPoK9
    Libro en español:
    - amzn.to/33AxEUg
    Contenido:
    0:00 Intro
    0:39 Qué es Divide y Vencerás?
    1:15 Ejemplo Libros
    2:31 Recursividad
    3:06 Pasos de Divide y Vencerás
    3:56 Subarreglo Máximo
    5:13 Subarreglo Máximo - Dividir
    6:05 Subarreglo Máximo - Conquistar
    6:39 Subarreglo Máximo - Combinar
    9:53 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

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

  • @thespookykidyt1466
    @thespookykidyt1466 4 หลายเดือนก่อน +6

    Bro deberias hacer un curso mas profundo de analisis de algoritmos, aunque lo cobres, me encanta tu manera de explicar

  • @melvintriano6509
    @melvintriano6509 3 ปีที่แล้ว +13

    Quien hizo purga de canales y dejo los que le entretienen más y les sirve más.

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

      jajaja me alegra quedarme en esos canales xD

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

    Solo llevo 45 seg de vídeo y ya te ganaste mi sub. Saludos.

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

      Muchas gracias, saludos!

  • @NicoleVargas_
    @NicoleVargas_ 3 ปีที่แล้ว +4

    Me encontré hoy con este canal y ya hice maratón con todos los videos jajajaj
    Espero con ansias el próximo xD

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

      Muchas gracias Nicole, últimamente he estado un poco ocupado pero ya estoy trabajando en el siguiente video :)

  • @elmerengues2589
    @elmerengues2589 3 ปีที่แล้ว +16

    Joder, siempre tan sabio y humilde el bicho
    Muchas Gracias por su contenido Tío Chio ♥ , cada día aprendo más gracias usted(:

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

      Muchas gracias Merengues n.n

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

    Chio por favor más contenido de diseño y análisis de algoritmos, eres muy bueno!

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

      Muchas gracias sin duda se vienen más videos de esos temas :)

  • @auron-mono6725
    @auron-mono6725 2 ปีที่แล้ว

    Gracias a Dios encontré éste canal

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

    Que bien explicas

  • @GooniesDev
    @GooniesDev 4 หลายเดือนก่อน

    Gran video, actualmente estoy leyendo Grokking Algorithms pero me a costado algo seguir leyéndolo el chapter donde hablan sobre esta forma de resolver problemas (por temas de vocabulario) y tu video me dio una gran overview para comprender de mejor forma este parte del libro. Gracias :)

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

    Estaría genial si pudieras hablar sobre otros paradigmas como algoritmos greedy, bracktracking, progrmación dinámica o fuerza bruta :) gracias por tu contenido! 🙌🏻

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

      Gracias por el comentario, puedes checar en el canal el vídeo de programación dinámica y en un par de horas sale otro video de esos temas ;)

  • @Magape777
    @Magape777 3 ปีที่แล้ว

    Gracias por darnos acceso a esta información de manera tan clara e ilustrativa.

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

      Gracias a ti por apoyar el canal :)

  • @joseyahrieluriberosas8324
    @joseyahrieluriberosas8324 3 ปีที่แล้ว

    Tu material me ha hecho aprender un monton muchisimas gracias

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

      Excelente, esa es la idea, gracias por tus comentarios n.n

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

    Gracias por la tarea señor, usted explica muy bien!

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

      Muchas gracias por el mensaje Cristian 😄

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

    Muchísimas gracias Amigo

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

      Gracias a ti por tu comentario :)

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

    ¡Buen video!
    Siempre tenía ese problema de que quería hacer todo al chilazo, pero una vez que entendí mejor este tema siento que mejoré a la hora de hacer las cosas y hasta se vuelve mucho menos complicado el realizar dicha cosa.
    Saludos.

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

      Qué bueno que te ayudó Safaera :)

  • @bladimirbenavides3940
    @bladimirbenavides3940 3 ปีที่แล้ว

    Excelente video, 👍👍👍

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

      Gracias!! :)

  • @JesusGonzalez-ho5gh
    @JesusGonzalez-ho5gh ปีที่แล้ว

    Muchas gracias Profe, soy estudiante de Licenciatura en deporte y verdaderamente no se mucho de programación pero usted lo explica super fácil. Gracias.

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

      Me da gusto que te ayude, tú ten paciencia, con práctica y dedicación puedes avanzar en la programación si te lo propones :)

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

    Reforcé lo que entendí en la clase de mi miss Patricia

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

    Muchas gracias por la información :3

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

      Con gusto n.n

  • @elviajedesaturno5014
    @elviajedesaturno5014 3 ปีที่แล้ว

    gracias profe!!!!!

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

      Gracias a ti por todo el apoyo compartiendo los videos con la comunidad :)

  • @ElTallerDeTD
    @ElTallerDeTD 3 ปีที่แล้ว

    Gran video! Me viene genial ya que estamos viendo este tema en la Uni, un saludo! :)

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

      Muchas gracias!! Ojalá y les ayude mucho para esos temas de la Uni :)
      Saludos!!

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

    Para saber entre qué días es mejor hacer la compra-venta, cómo lo podemos realizar? Con el método explicado solo sabemos el número de subarreglo máximo pero no entre qué intervalo se produce

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

    Muy buen video gracias por compartir..
    Una pregunta para la comunidad.
    Hay que saber álgebra para entender big O notation

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

    Ya me suscribo

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

      Gracias :)

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

    En los resumenes de los libros puedes hacer un algoritmo que haga el resumen de un libro tomando todo el libro y eligiendo las partes mas importantes

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

    Hola CHio Como estas ? te cuento que estoy cursando un Master en Cybersecurity en Vancouver Canada y tengo un curso de Algorithms. Estoy muy complicado con este topic, pero viendo tus videos que podido comprender un poco mas.
    Ahora tengo un assessment que hacer. Para esta tarea, se supone que debo encontrar algun problema que tenga una solución de divide y vencerás. Explicar el problema, la solución algorítmica y su análisis de complejidad. Asegúrarme de proporcionar la referencia de la respuesta, como una URL o una sección de un libro..... TU tendras algun caso por ahi o algun URL que me puedas compartir ... Muchas Gracias Master

  • @pabloalvarezs
    @pabloalvarezs 3 ปีที่แล้ว

    👌👌👌

  • @marceloguzman646
    @marceloguzman646 3 ปีที่แล้ว

    haz el análisis d complejidad xfavorrr

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

      Pronto trabajaré en ese vídeo ;)

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

    Excelente todas tus explicaciones! Con que programa haces las animaciones de explicacion de los videos? 🙏

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

      Gracias por el apoyo, todos los dibujitos los hago con Aseprite, un editor para hacer pixelart, y de ahí exporto las imágenes al software de edición

  • @elmerengues2589
    @elmerengues2589 3 ปีที่แล้ว

    Tío Chio, disculpe la molestia, necesito exponer algunos ejemplos sobre las aplicaciones del cálculo integral en la Ingeniería en Computación (problemas reales), ando buscando info como loco y supuse que su experiencia y sabiduría podían ayudarme(: , si sabe algo le agradecería mucho compartirme un par de ejemplos para investigarlos más a fondo ♥, de antemano muchas gracias

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

      No estoy muy familiarizado pero creo que se aplica mucho de los temas de cálculo en gráficos computacionales, aunque eso ya se encuentre de forma interna en motores gráficos. Aparte en diferentes modelos probabilísticos se llegan a utilizar conceptos de cálculo, y estos modelos se usan para predicciones y cosas de inteligencia artificial y machine learning.
      Igual y hoy hacemos un directo ;)

    • @elmerengues2589
      @elmerengues2589 3 ปีที่แล้ว

      @@ChioCode Con eso es más que suficiente ♥ , me dedicaré a investigar sobre ello, Muchas Gracias Tío Chio(:

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

    Pero el script solo te devuelve la suma máxima del algun aubarreglo pero no los indices y por tanto no sabes exactamente cual es ese subarreglo que buscas no?

    • @EMYskateboarding
      @EMYskateboarding 11 หลายเดือนก่อน

      THIS, hay manera de que devuelva el subarreglo maximo? Me imprime como resultado 4. Igualmente no deja de ser impresionante el nivel de educador que tiene, mis aplausos!

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

    En mi universidad se llama división de problemas en subproblemas

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

    6:58 ¿vas comparando las mitades del arreglo?

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

    Para poder imprimir el codigo del video en pantalla y ver como funciona, como se podria hacer? Entiendo el codigo y toda la explicacion pero me quede en blanco a la hora de poder imprimirlo en pantalla 😅

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

      Puedes ir imprimiendo con puros prints para ver lo que va haciendo, o utilizar algún debugger :)

  • @user-em9yc4uv2p
    @user-em9yc4uv2p 3 ปีที่แล้ว

    como se haria eso en c++ para encontrar el numero minimo de un arreglo. por favor necesito un video para ya.

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

      Para encontrar el número más pequeño en un arreglo puedes simplemente recorrer el arreglo e ir comparando el valor con el que tengas en alguna variable, así puedes hacer un algoritmo lineal para encontrar el menor

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

    Hola, ¿puedo preguntarte de que universidad eres profesor?, ¿ya también soy profesor, podríamos hacer vínculos?, saludos y muchas gracias por la presentación.

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

      Hola Ricardo, trabajo en la Universidad Autónoma de Coahuila, y si sería muy interesante hacer vínculos

  • @diegol.e1890
    @diegol.e1890 2 ปีที่แล้ว

    con ese tipo de programacion se podria encontrar una solucion al juego kakuro? podrias hace un video explicando?.

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

      En realidad para ese juego hay otra técnica que le queda perfecta, backtracking, y si, pronto haré un video explicándola n.n

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

    No entendí un carajo, pero voy a guardar el video por si acaso 😁

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

      Jajajaja espero que después de verlo un par de veces se te haga más fácil el tema xD

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

    🤔💛💙❤️

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

      ♥️

  • @donsabrosano
    @donsabrosano 10 หลายเดือนก่อน

    jajaja, no entendí, al principio dice que busca un par de días, pero la solución son 3, comprar en -3 y vender en 2, da una ganancia de 4 igual que la de -2, 2 😵‍💫

  • @naren-7
    @naren-7 ปีที่แล้ว

    No entendí la parte de la funcion CalcMaxMitad, ¿para qué es la variable max_izq = -10000000, para descartar algún valor? 🤔
    ⏲ Minuto: 9:55

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

      Es para inicializarla con un valor muuuuy pequeño así el primero que se tope el algoritmo va a ser más grande que ese valor y lo va a tomar

  • @ruben5784
    @ruben5784 3 ปีที่แล้ว

    Buen video!
    Una preguntita, ¿¿su complejidad no sería n * logaritmo EN BASE 2 de n?? Es decir: O(n*log2(n)) 🤔

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

      Correcto, aunque por la generalización de la notación asintótica normalmente se escribe el log sin la base :)

    • @ruben5784
      @ruben5784 3 ปีที่แล้ว

      @@ChioCode Entendido, gracias jefe 👍

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

    no se si hablas de programacion o de vida

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

      Un poco de todo 😁

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

    capo que buen video

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

      Muchas gracias 😊

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

    Que bien explicas