4 ms·
Discrete math first comes to mind first: lists, trees, graphs, etc. Used in basic algorithms 101, but you need some more serious probability theory for probabil
by ivan_ah 10y ago
Discrete math first comes to mind first: lists, trees, graphs, etc. Used in basic algorithms 101, but you need some more serious probability theory for probabilistic algorithms.
Linear algebra is useful for computer graphics, but also for general "system thinking" concepts like inputs spaces, output spaces, transformations, and properties of transformations.
Basic differential calculus, meeeh, but multivariable calculus—specifically optimization—is really important in many programming contexts (e.g. machine learning).
Of course, the most important and most basic of all is the notion of a function f(x), its definition, inputs, outputs, properties, etc.
- pirocks 10y agoAlso related to functions: big-O notation.
- ivan_ah 10y agoRather than thinking just of how math ideas are used in CS, we should think of the relation as a two-way street: computing can help us better understand math too. Here is a short tutorial on basic math for programmers: https://minireference.com/static/tutorials/sympy_tutorial.pdf https://minireference.com/static/tutorials/sympy_tutorial.pd... It serves to review basic high school math, calculus, and even a bit of linear algebra. SymPy is very powerful stuff...