I'm contemplating doing a Master's degree in Computer Science at night school. What sort of mathematics am I likely to encounter?
I am a computer science student (theoretical computer science), so I can tell what math is required for the courses I pick up.
It really depends on what specialization you pick, if you go into computer graphics, then linear algebra, geometry, calculus and analysis are very useful.
Incase you will specialize in theoretical computer science and database theory like I do, you might want to look into the following topics:
- Logic (finite model theory in particular)
- Abstract algebra
- Algebraic geometry ( for GIS)
- Set theory
- Probability theory
- Calculus and analysis (basics should suffice)
- Numerical mathematics
- Any other discrete mathematics you can get your hands on!
For all the other specializations I cannot really help you, but I think knowledge in those topics I listed above should be helpful anyway.
As other have said, without seeing the schedules of your course it is impossible to know exactly what pre-existing knowledge they will assume.
As a general rule though, I would look at the outlines of some courses on Algorithms and Data Structures. Unless your course is going to be very theoretical (design of functional languages, monads, functors etc) or very weighted toward numerical algorithms (floating point representation, error tracking, accuracy analysis) then these will probably be the most useful.
In particular, learn to describe algorithms rigorously (set theory, functions, combinatorics), to be rigorous when evaluating the performance of an algorithm (asymptotic complexity, big-O notation, graph theory) and learn some basic discrete probability theory. Have a look at the courses on offer at MIT OpenCourseWare for an idea of what might be expected.
This really depends on what sort of stuff you are going to work but, but let me think...if you are into analysis of algorithms you certainly need Combinatorics (which you've probably done a few given it's a must for all CS majors, especially generating functions and asymtotics), Probability theory (convergence of RVs, stochastic processes such as Random walks, Markov chains), Polya urns (for random trees). Have a look at Concrete Mathematics by Graham, Knuth and Patashnik and Analytic combinatorics by Flajolet (RIP).
also I found modeling of some algorithms as Queuing processes very useful (homogeneous/ nonhomogeneous Poisson process).