Creo que la fuente más asombrosa para aprender Algoritmos y Estructuras de Datos son los MOOC de Algoritmos, Parte 1 y Algoritmos, Parte 2 de Robert Sedgewick y Kevin Wayne de la Universidad de Princeton. A continuación se encuentran los enlaces a los cursos en Coursera:
Algoritmos, Parte I – Universidad de Princeton | Coursera
Algoritmos, Parte II – Universidad de Princeton | Coursera
- ¿La matriz de Java de primitivas se almacena en la pila o el montón?
- ¿Qué función se usa para aceptar números aleatorios entre límite inferior y superior en C?
- ¿Cómo funciona el PageRank?
- ¿Cómo reduce () tomar la entrada de múltiples map ()?
- ¿Qué hace que resolver CAPTCHA sea tan difícil?
Se ajusta bastante a la factura en lo que respecta a sus criterios, excepto por ejemplo de código en Python. Si puede obtener algunos ejemplos de código Java realmente concisos y concisos en este curso, entonces apuesto a que no se arrepentirá de invertir su tiempo y dinero en este curso. Muy recomendable.
Además, el libro Algorithms Design Manual de Steven Skiena es un libro grandioso y conciso con muchos ejemplos. Nuevamente, tiene un código de ejemplo no en Python sino en C. Pero, si puede seguir con el código C, entonces recomendaría este libro.
Espero que la información anterior le ayude en su búsqueda de algoritmos y estructuras de datos. Todo lo mejor.