<p>Question above. From the group of core math classes (like calc I, II, diff eq, etc.) which courses are used the most and most relevant to CS? </p>
<p>I'm taking calc 3 at a CC for dual enrollment and if they let me transfer it, I'm trying to decide whether to retake calc 3 or diff eq because if diff eq is more relevant to CS, I'm just gonna take that. thanks guys</p>
<p>Discrete math is probably the most relevant for CS. I don’t think I’ve ever had to deal with differential equations at all in CS. Maybe linear algebra if you’re interested in graphics.</p>
<p>Differential Equations is not really relevant to CS unless you take a course like “Numerical Solutions of Ordinary/Partial Diff Eq”. In those type of courses, you would write programs to computationally solve Calculus, Diff Eq and Linear Algebra problems. Numerical Analysis is a course which is jointly in both the Math and CS departments of many schools.</p>
<p>As a matter of fact, Diff Eq and Calculus III are being removed from more and more CS programs (They were required back when I was an undergrad).</p>
<p>The Math courses that are more relevant to CS are Linear Algebra, Discrete Mathematics (combinatorics and graph theory) and Error-Correcting Codes (cryptography).</p>
<p>“where does discrete math place in the math sequence. Calc III -> diff eq -> linear algebra -> discrete math?”</p>
<p>Ok…here is where the school itself determines what really goes into discrete mathematics.</p>
<p>At some schools, discrete math is a sophomore-level course that surveys topics like combinations, permutuations and some elementary graphs.</p>
<p>At other schools discrete math is an upper-level (many times senior-level) course broken into two man areas: Combinatorics and Graph Theory. The upper-level Combinatorics course will also get into combinations/permutations but you will get into the recursion and generating functions. The upper-level Graph Theory course will go over trees and optimization problems and well as designing algorithms to solve graph problems.</p>
<p>differential equation is not required for CS in most of CS program. Calculus III is modified for CS program so I suggest you take Calculus III or discrete math.</p>
<p>FWIW, DiffEq was required for CS at UIUC when I was there as well. I think it is just generally a topic that engineering programs want you to have because it governs the natural world. It sure isn’t very useful in CS, but it is so applicable to the world that I guess programs still keep it in there.</p>
<p>I think discrete math would also cover group theory. Besides discrete math, useful math classes, if your school has them, might include financial mathematics, operations research, statistics, logic, mathematical modeling, cryptography, and game theory. You might find these under the math department, but they could also be in the business, MIS or management departments. Logic might even fall under philosophy and game theory might be under political science or psychology which demonstrates how interdisciplinary CS can be.</p>
<p>well I’m going to michigan and like qwerty said diff eq is required - I just checked too. Guess I’m in diff eq. Skipping college calc 3 won’t be a problem for me later right? If it isn’t I’m jumping right into diff eq.</p>
<p>MrEgo had great points. If I remember correctly, when I was an undergrad at Michigan State, there was a Philosophy course (Logic) that was actually an approved elective for Computer Science and Computational Mathemetics (my major).</p>
<p>I will say this about Diff-Eq, it was a course that “made sense” out of learning at lot of engineering/math/physics applications.</p>
<p>how did you guys manage to get through all those math classes? Did you realize that the courses were going to become a lot more interesting/fun as a junior/senior? </p>
<p>I don’t hate math but I don’t love it. And I don’t know if I’m going to grunt through all these boring, dry first year-engineering courses only to find out that the stuff after it isn’t as interesting as I thought it would be. I don’t know what to do.</p>
<p>Well I was in my emphasis area about the time I became a junior so those courses were in an area that I liked. I was someone who wasn’t too interested in “pure” mathematics but also was not into the theoretical or hardware areas of computer science, so computational mathematics was my thing. I was always the type who wanted the “actual” data, so I wanted to know what the hell “x” was numerically.</p>
<p>When you are in courses like mathematical programming (which was really an optimization course at Michigan State), you are learning the “optimal” mix of objects to obtain the best profit. When you are taking graph theory, you get some insight on how computer networks are designed or modeled. You are now “applying” math concepts to everyday applications which make the course more interesting.</p>
<p>If anything I “wished” had happened during my time in the Math program, I wished math majors were allowed to take Applied Calculus I, II, III…especially if the math major was intending to be more “applied” (like myself). Usually, most universities will not allow math majors to take Applied Calculus I, II, III for credit…just the engineers.</p>
<p>Short answer… there are two kinds of math, the math like analysis and the math like algebra. Of the two, algebra is more useful to the study and practice of CS.</p>
<p>Long answer… the only useful thing you’ll learn in Cal/DiffEq is limits and sequences, and the only useful thing you’ll learn in LinAlg is doing proofs. Discrete math tries to cover things that are in the “algebra” half of the discipline that don’t really count as modern abstract algebra… things like logic, proofs, combinatorics, graphs, trees, recursions, etc. This will be the most useful math class you have. Other useful math courses cover applications like crypto, numerical analysis, coding, etc. Actual algebra is useful for the theory.</p>
<p>Sorry for going a bit off-topic… but is Computer Science a discipline in engineering? If not, which department does it belong? Just “science”, as the name implies?</p>