|
|
|
Ask HN: Resources to learn math as a foundation for CS
|
|
38 points
by txmjs
3032 days ago
|
|
I’ve been a self taught web developer for about 4 years, and although my programming knowledge has been increasing at an exponential rate recently, I feel like I want to step up to the next level, by which I mean trying to teach myself the foundations of CS. I know in order to do this, my maths needs to be much stronger than it is now. Assume that my maths knowledge is currently at the same level as a high school student. I’d appreciate any advice as to how I can improve my maths, and what I should be learning in order to better grasp CS foundations. Thanks! |
|
For me, the biggest aid was finding good books, ones with exercises and that explained the material very well. Then it was just a matter of reading, actually doing all the exercises, and struggling with the material until I could fully understand it; then I moved on to the next chapter/book/etc.
I've worked through a lot of books by now but here's the short list of ones that I think are great for getting started(especially, if you do what I described above), also when these have solutions manuals I would advise getting them as well so you can ensure you understand how every problem works.
1. Calculus 4th ed. by Smith and Minton
2. Introduction to Linear Algebra (Gilbert Strang)
3. Introduction to Probability Theory (Hoel, Port, Stone)
4. Discrete Mathematics and its applications (Rosen)
5. Introduction to Automata Theory, Languages, and Computation (Hopcroft)
6. Introduction to Algorithms (Cormen, Leiserson, Rivest, Stein)
It will take you at least a year if not two to work through all these in your spare time, but the advantage is that after that you'll have the skills to be able to approach just about any topic in computer science (even highly theoretical ones) and not have much difficulty understanding them (at least that was my experience).