<p>MiamiDap - “No CS math will be at the same level as math for engineers and CS majors are not required to be particularly good with math which is a must for engineers.”</p>
<p>The CS majors are in the same math classes as the other engineers and they take additional ones that the engineers do not. For some programmers all of those math classes aren’t going to be necessary. But they are very much necessary for other computer scientists. From posters on the engineering board (I can’t recall the exact contributor): </p>
<p>How do these courses tie in to computer science and software?</p>
<p>Cryptology (the practice and study of techniques for secure communication) usually requires some knowledge of both number theory and abstract algebra.</p>
<p>Linear Algebra is probably one of the most important math courses for any engineer or scientist. Many engineering/CS areas rely on linear algebra including operations research, scientific software development and computer graphics.</p>
<p>Combinatorics and Graph Theory applies to areas like network design. You really get into the nitty-gritty when taking junior/senior-level courses in Combinatorics and Graph Theory.</p>
<p>Numerical analysis goes over the computational aspects of topics that you covered in your Calculus, Linear Algebra and Differential Equation courses (both ordinary and partial). Numerical Analysis is the foundation for scientific software development.</p>
<p>Depending on the school, courses in cryptology, numerical analysis, combinatorics, graph theory and computational linear algebra are part of both the CS and Math departments.</p>
<p>Another Computer scientist commented:</p>
<p>All of the math topics you have listed are certainly within the realm of what a computer scientist/software engineer might find useful. Of them, I would say that combinatorics and abstract algebra are probably the most aligned with software development, followed by linear algebra and number theory, followed by numerical analysis/methods and differential equations. Note that to study numerical analysis/methods, typically both linear algebra and differential equations will be indispensable. Generally speaking, the more math you take as a CS major, the better off you are. Taking math courses not only teaches you about the content of the course, but it increases mathematical maturity, which may be the most important benefit of courses like differential equations (which is not all that compatible with the content of core computer science topics).</p>