Chio, este video fue fantastico, me encanta lo disfrutable que puede ser un video de estudio. Se ve que le pones mucho amor al canal con todas las animaciones para explicar el contenido, una ambientacion y sonidos impecables y tienes muy buena voz para hacer lo que haces, en comparacion con lo que he encontrado en youtube. 10/10 hermano!!!!
Que gran video! Estoy a penas empezando con el tema de estructuras de datos y algoritmos, mañana tengo un test para una pasantía de Oracle, y tus videos me ayudan mucho a entender estos temas!!
te amo te lo juro te amo. LLEvaaba toda la mañana intentando hacer esto en C y nsk mierdas, he visto tu video y lo he hecho yo solo, sin copiar y lo he entendido bnde. Te quiero,
Aquí dejo otra opción 👇: def quicksort(lista): # Si la lista está vacía, no hay nada que ordenar if len(lista) == 0: return [] # Si la lista tiene un solo elemento, ya está ordenada elif len(lista) == 1: return lista # Si la lista tiene más de un elemento, seleccionamos el pivote pivote = lista[0] # Separamos la lista en los elementos menores y mayores que el pivote menores = [x for x in lista if x < pivote] mayores = [x for x in lista if x > pivote] # Ordenamos recursivamente cada uno de los dos grupos menores_ordenados = quicksort(menores) mayores_ordenados = quicksort(mayores) # Devolvemos la lista ordenada juntando los dos grupos ordenados y el pivote lista = menores_ordenados + [pivote] + mayores_ordenados return lista # Definimos una lista con valores desordenados arr = [3, 2, 4, 5, 12, 1, 5, 0] # Mostramos por pantalla los valores desordenados print(arr) # llamamos la funcion para ordenar y mostramos por pantalla la lista ordenada print( quicksort(arr))
Justamente vimos hoy este tema en la universidad, me parece buenísimo tus vídeos para reforzar y profundizar los temas que vamos viendo!! :D Muchísimas gracias por todos estos vídeos explícativos que haces!
Hola bro, he estado viendo tu contenido estos días, ¡excelente calidad! Estudio ing. Informática, en mi materia de programación estamos viendo métodos de ordenamiento y busqueda; burbuja, inserción, selección, quicksort, búsqueda binaria, etc. Aún no hemos visto el tema de recursividad, el profesor nos pidió practicar quicksort sin recursividad, pero la verdad estuve el fin de semana trabajando con mis compañeros y no pudimos lograr hacerlo, se nos hacía el programa muy ineficiente sin recursividad, pero realmente no pudimos hacerlo. ¿Crees que se puede lograr realizar el código sin recursividad? La verdad la vimos muuuy dificil para mí y mis compañeros. Agradecería que me respondas, saludos
Hola carnal, muchas gracias por el mensaje. Y si, claro que se puede hacer una implementación iterativa. Puedes ver cómo lo hacen acá en geeksforgeeks con un stack de apoyo www.geeksforgeeks.org/iterative-quick-sort/ Espero te ayude 😸
no te brindo una pizza porque ni para la comida de mi casa tengo, pero apenas empice a ganar plata como se debe te voy a invitar para donde las cariñosas, te lo mereces bro!
Hola chio , no me sale el quick sort si te queda tiempo para darle una mirada a ver que estoy haciendo mal se agradece drive.google.com/file/d/1yaKUjSEwI2t0sQaZdmYcG6x0ZMUuCeHA/view en la funcion partition la idea es devolver el min que seria el indice que tiene mi pivote ordenado, pero lo hago y se daña todo xD Ya no , viendo otras implementaciones me di cuenta que la forma en que recorria el arreglo se rompia y lo cambie por for(let i = left; i < right; i++){ ya funciona !
Chio no dejes de subir videos, tu canal tiene una calidad impresionante!!!
Muchas gracias Roger, seguiré con los videos, espera hoy el siguiente ;)
Chio, este video fue fantastico, me encanta lo disfrutable que puede ser un video de estudio. Se ve que le pones mucho amor al canal con todas las animaciones para explicar el contenido, una ambientacion y sonidos impecables y tienes muy buena voz para hacer lo que haces, en comparacion con lo que he encontrado en youtube. 10/10 hermano!!!!
Hola profesor es un placer ver sus videos y encontrar su canal, su video fue bastante facil de comprender.
Que gran video! Estoy a penas empezando con el tema de estructuras de datos y algoritmos, mañana tengo un test para una pasantía de Oracle, y tus videos me ayudan mucho a entender estos temas!!
te amo te lo juro te amo. LLEvaaba toda la mañana intentando hacer esto en C y nsk mierdas, he visto tu video y lo he hecho yo solo, sin copiar y lo he entendido bnde. Te quiero,
Aquí dejo otra opción 👇:
def quicksort(lista):
# Si la lista está vacía, no hay nada que ordenar
if len(lista) == 0:
return []
# Si la lista tiene un solo elemento, ya está ordenada
elif len(lista) == 1:
return lista
# Si la lista tiene más de un elemento, seleccionamos el pivote
pivote = lista[0]
# Separamos la lista en los elementos menores y mayores que el pivote
menores = [x for x in lista if x < pivote]
mayores = [x for x in lista if x > pivote]
# Ordenamos recursivamente cada uno de los dos grupos
menores_ordenados = quicksort(menores)
mayores_ordenados = quicksort(mayores)
# Devolvemos la lista ordenada juntando los dos grupos ordenados y el pivote
lista = menores_ordenados + [pivote] + mayores_ordenados
return lista
# Definimos una lista con valores desordenados
arr = [3, 2, 4, 5, 12, 1, 5, 0]
# Mostramos por pantalla los valores desordenados
print(arr)
# llamamos la funcion para ordenar y mostramos por pantalla la lista ordenada
print( quicksort(arr))
eso no es quicksort es mergesort, tambien iteraste dos veces en la lista de menores, mayores, con una iteracion es sufuciente para los 2 valores
Gracias por explicarnos con manzanitas Chio, justo el algoritmo del que quería hacer un shorts, tomaré mucho de acá como referencia.
Perfecto Gabriel, espero te ayude para el shorts :D
Ya me estaba alterando que no hubiera video en un rato, gracias Chio !
Jajajaja se me complica a veces hacerme el espacio para trabajar en los videos, pero seguirán saliendo, gracias por esperar 😃
@@ChioCode tu sigue por favor ! Tus explicaciones son buenísimas, estoy haciendo todo mi perfil profesional con lo que subes XD
Veo muchos videos acerca de programación y debo decir que este canal es muy interesante. Tus temas y explicaciones son geniales, sigue así bro.
Muchas gracias por tu mensaje, espero que los videos te ayuden n.n
Muy bueno, lo estoy viendo en la facultad y tu video me ayudo a entenderlo! Muy buenos tus videos de ordenamientos recursivos!!
Muchas gracias, me alegra que te ayuden en la facultad :)
Justamente vimos hoy este tema en la universidad, me parece buenísimo tus vídeos para reforzar y profundizar los temas que vamos viendo!! :D
Muchísimas gracias por todos estos vídeos explícativos que haces!
Me alegra que ayuden para reforzar todo lo de la universidad, gracias por tu apoyo ☺️
Hubiera querido ver estos temas en la universidad me hubiera ayudado bastante en mi carrera, ya tiene 7 años que salí :(
Me encanta tu concreta explicacion muchas gracias.
Excelente!! la explicación, gracias lo implementaremos en el próximo programa.
banda no entiendo ayuda
¡SÍ!, otro de tus buenos vídeos con tus excelentes explicaciones : D
Muchas gracias por el comentario, espero que si les sirvan esas explicaciones 😸
Excelente Video muy didáctico, eres el mejor !
Tú eres el mejor xD
increible video, sos un maquina
Fan de los armadillos que curioso amigo, buen estilo
Excelente explicación, muchas gracias
Hola bro, he estado viendo tu contenido estos días, ¡excelente calidad!
Estudio ing. Informática, en mi materia de programación estamos viendo métodos de ordenamiento y busqueda; burbuja, inserción, selección, quicksort, búsqueda binaria, etc.
Aún no hemos visto el tema de recursividad, el profesor nos pidió practicar quicksort sin recursividad, pero la verdad estuve el fin de semana trabajando con mis compañeros y no pudimos lograr hacerlo, se nos hacía el programa muy ineficiente sin recursividad, pero realmente no pudimos hacerlo. ¿Crees que se puede lograr realizar el código sin recursividad? La verdad la vimos muuuy dificil para mí y mis compañeros.
Agradecería que me respondas, saludos
Hola carnal, muchas gracias por el mensaje.
Y si, claro que se puede hacer una implementación iterativa. Puedes ver cómo lo hacen acá en geeksforgeeks con un stack de apoyo www.geeksforgeeks.org/iterative-quick-sort/
Espero te ayude 😸
@@ChioCode
Uwuwuwuw video nuevo!!! :3
♥️♥️♥️♥️
Podrías proporcionar la complejidad temporal del algoritmo ?
Podrías mostrarnos cómo se hacen las pruebas de escritorio con estos ordenamientos?
Claro, seguramente lo aborde en un vídeo de testing, o podríamos verlo en un directo los miércoles 😊
En que universidad enseñas?
podrias explicar el algoritmo de codificacion de polilineas? llevo una semana queriendo entenderle
Lo siento, no estoy familiarizado con ese algoritmo, tendría que investigar sobre él para poder saber de qué se trata 😞
@@ChioCode entiendo, gracias por contestar c:
Chio en que universidad estas dando clases ?
por favor podrias hacer un video de Round robin y merge short?
Ya tengo uno de Merge Sort lo puedes ver en la lista de reproducción de algoritmos de ordenamiento n.n
tkm chio
Bro, cómo no tienes más subs?
no te brindo una pizza porque ni para la comida de mi casa tengo, pero apenas empice a ganar plata como se debe te voy a invitar para donde las cariñosas, te lo mereces bro!
Gracias bro, con tu lindo mensaje y apoyo para crecer el canal es suficiente 😸
Hola chio , no me sale el quick sort si te queda tiempo para darle una mirada a ver que estoy haciendo mal se agradece drive.google.com/file/d/1yaKUjSEwI2t0sQaZdmYcG6x0ZMUuCeHA/view
en la funcion partition la idea es devolver el min que seria el indice que tiene mi pivote ordenado, pero lo hago y se daña todo xD
Ya no , viendo otras implementaciones me di cuenta que la forma en que recorria el arreglo se rompia y lo cambie por for(let i = left; i < right; i++){ ya funciona !
Perfecto Jhon, me alegra que hayas encontrado la solución :)