Para entender las matemáticas, debes hacer muchas matemáticas. Pero sé que eso no es posible para todos (y es fácil para mí decir que estoy obteniendo un título de física), pero desafortunadamente es la verdad (no te preocupes, el hecho de que tienes que practicar la programación para ser bueno) se pierde en muchos estudiantes de física).
Si fuera usted, podría hacer algunas cosas dependiendo de cuán motivado esté para dominar algunas matemáticas fundamentales. Supongo que muchas matemáticas no serán terriblemente relevantes para usted, por lo que centrarse en las matemáticas discretas es probablemente una buena idea. En ese caso, leería este libro:
Matemática discreta y sus aplicaciones: Kenneth H. Rosen: 9780072880083: Amazon.com: Libros
Este libro fue bastante esclarecedor para mí, pero otros lo han llamado un poco seco. Puedes buscar las reseñas, pero yo digo que es muy completo. Si comprende los temas discutidos en ese texto, estará en una excelente posición para comprender las matemáticas detrás de los algoritmos. Mencionaste que tienes un GED. No tengo idea de lo difícil que puede ser para usted obtener un libro de matemáticas, pero parece que puede manejar cómodamente algunas ideas complejas. No se deje intimidar por las matemáticas (mucha gente lo está). Es solo lógica, y puedes entenderlo si trabajas lo suficiente. Haga muchos problemas y verifique sus soluciones. Este libro se usa normalmente para personas de CS de primer año, pero es mucho mejor como referencia (mire las reseñas … muchos estudiantes lo odian porque es demasiado para ellos, así que tal vez sea más adecuado por un segundo o incluso estudiante de tercer año para pasar cómodamente). Siéntase libre de encontrar otros libros, solo asegúrese de estar cubriendo los siguientes temas:
- ¿Los grandes vendedores nacen o se hacen?
- ¿Qué tiene de malo el uso de pruebas estandarizadas para medir cuánto aprenden los estudiantes?
- ¿Qué herramientas podemos usar para incrustar un screencast en vivo (algo así como una Academia Khan en tiempo real) y chatear para recibir tutoría en línea?
- Cómo prepararme para mi GCSE
- ¿Dónde puedo obtener tutoriales de Linux?
- Gráficos / árboles
- Lógica proposicional / pruebas
- Combinatoria
- Conjuntos / secuencias
- Complejidad (aunque esto podría dejarse para un libro de algoritmos)
- Probabilidad
- Reaparición
- Idiomas, gramáticas, computabilidad, etc.
- Circuitos
Tenga en cuenta que cada uno de estos puede ser su propia clase o libro de texto. Las matemáticas discretas están destinadas a darte una introducción, y creo que eso es todo lo que realmente necesitas. Una vez más, este libro de Rosen es excelente por su integridad, pero si lo encuentra demasiado duro, puede probar con otro.
Además, puede ser beneficioso para usted ver cursos en línea gratuitos o videos de cursos para matemáticas discretas. Mucha intuición proviene de un buen instructor, por lo que esto puede ayudar. Si pasa horas en algunos problemas, eso es algo bueno.
No es como muchos programadores querer aprender cosas difíciles cuando ya han hecho una carrera exitosa, y el hecho de que vuelvas a hacerlo después de 10 años es realmente increíble. Buena suerte.