Fields that require both CS and pure math I'm mainly a CS major, but I also want to learn more advanced  mathematics. I see lot of cross over between CS and applied math, same can't be said about pure math.
Definition of 'advanced': Something a pure math major learns during and after late undergraduate years.
What are the fields that combines advanced mathematical topics with computer science? 
Theoretical computer science and computational group theory are good examples.
 A: Cryptography is a field which requires lot of Number theory. Formal languages and automata theory requires some Graph theory, and these automata things can be connected to computer science as well.
A: Computational algebraic geometry is the first example that comes to mind. It's used in phylogenetics, see here (you can also look up the book Algebraic Statistics for Computational Biology). It also shows up in robotics and control theory, but I know a lot less about that.
Polytopes (see Coxeter - Regular Polytopes or Grunbaum - Convex Polytopes) also appear in a lot of applications. The only specific one that comes to mind at the moment is the problem of figuring out whether an object (like a robot) can traverse a given maze. The algorithms use the convex hull of the robot to test whether or not it could traverse the maze. I'm sure there are a lot of people more knowledgeable than me on the subject.
A: Semantics of programming languages: the modern version is a mixture of type theory and category theory.  Also, there is a lot of subtle issues in logic (linear logic in particular) that crops up.
Design of programming languages: Things like linear logic have influenced the addition of a number of features to languages (or reasonable restrictions).  monads in Haskell come straight out of category theory.  
Analysis of programming languages: static analysis is nowadays all based on abstract interpretation, which is fundamentally an application of lattices and of Galois connections.
A: Much of data mining requires an understanding of high dimensional geometry. Lots of machine learning also requires an understandind of advanced probability theory.
A: Robotics.  I don't know much about this field but from a theoretical point of view a lot of lie group theory is used (to describe joint motion and position).  In particular the lie theory of rigid motions i.e. of the Euclidean group $SE(3)$ is relevant.  I would imagine CS would come in more from the computational side when larger calculations are involved.  Also its robots which need to be built so plenty of mechanical and electrical engineering going on here.
This is mostly based on a quick glance at http://www.springer.com/computer/ai/book/978-0-387-20874-9.  Which is written for an undergraduate math or engineering major.
A: I am working with the Schroedinger equation,
which surprisingly leads to graph theory (via cell decompositions).
To get a good grip on these graphs, I did a lot of programming,
since doing it by hand takes way too much time. 
I generated about 100 examples, and from there, I could easily see what needed to be proved,
something which was quite hard prior to that discovery.
It is now part of my thesis
(Original article paywalled).
A: Number Theory: many large numbers were tested by using computers.
Linear programming: many algorithms have been developed.
A: Today is an open question to find an efficient algorithm/data structure that can be used to index/search information in a high dimensional space (ie d > 20).
I've seen approaches using computational geometry, space filling curves, principal component analysis, etc. 
A: Computer graphics is a prime example of a field that needs sophisticated CS and math.
A: Computable analysis
A: Questions on computational complexity can be asked about problems and algorithms arising in any subject including pure mathematics subjects. e.g. in computational number theory, computational topology, etc, and as Igor Pak describes on his blog, in compuational combinatorics.
A: There is a lot of opportunity for merging the fields in designing advanced real-time embedded controllers. Embedded controllers run everything from your car's ECU to the flight control system on a jetliner. There is demand to develop control algorithms that allow for better fuel efficiency, expanded performance envelopes, better on-board diagnostic and prognostic capabilities, redundancies and automated detection of sensor or component failures, etc.
Most embedded controllers now can clear basic linearized models between 100 Hz and 10 kHz. However, some of the advanced algorithms cannot be cleared in real time by existing components. There are two sides of this coin: one is hardware development; the other is algorithm development. Both sides of this coin depend a lot on CS theory as well as pure and applied mathematics. Things like distributed on-board processing, real-time parallel computation, over-the-air streaming of compressed real-time data, etc. are all of widespread interest in academia and industry.
