Quantum impurity models describe an atom or molecule embedded in a host
material with which it can exchange electrons. They are basic to nanoscience as
representations of quantum dots and molecular conductors and play an
increasingly important role in the theory of "correlated electron" materials as
auxiliary problems whose solution gives the "dynamical mean field"
approximation to the self energy and local correlation functions. These
applications require a method of solution which provides access to both high
and low energy scales and is effective for wide classes of physically realistic
models. The continuous-time quantum Monte Carlo algorithms reviewed in this
article meet this challenge. We present derivations and descriptions of the
algorithms in enough detail to allow other workers to write their own
implementations, discuss the strengths and weaknesses of the methods, summarize
the problems to which the new methods have been successfully applied and
outline prospects for future applications.