¿Qué tan bien necesito entender las pruebas?

No sé en qué algoritmos está trabajando, me parece útil implementar un algoritmo en código para ver cómo funciona todo, eso es mucho mejor que tratar de leer un libro. Cargue el código en un depurador visual como Visual Studio C ++ o Eclipse Java y vea cómo funciona.

Supongo que algunos algoritmos pueden ser bastante difíciles de implementar correctamente, por lo que puede encontrar una implementación existente que pueda analizar. Busque en Internet, hay una buena posibilidad de que alguien tenga una implementación (incluso con errores) de la que pueda aprender.

Si está trabajando en los clásicos como quicksort, árbol binario, cola de prioridad, etc., debe implementarlos desde cero. Es muy difícil perfeccionar otros algoritmos, como los árboles y los analizadores rojo-negro, pero es posible que pueda comprender el código incluso a partir de ejemplos con errores.

Los siguientes libros pueden ayudarlo

Cómo pensar como un matemático: un compañero de las matemáticas de pregrado por Kevin Houston

Cómo demostrarlo: un enfoque estructurado por Daniel J. Velleman

Cómo resolverlo por George Polya para la resolución general de problemas