  An efficient Monte Carlo algorithm for the simulation of spin models with
long-range interactions is discussed. Its central feature is that the number of
operations required to flip a spin is independent of the number of interactions
between this spin and the other spins in the system. In addition, critical
slowing down is strongly suppressed. In order to illustrate the range of
applicability of the algorithm, two specific examples are presented. First,
some aspects of the Kosterlitz--Thouless transition in the one-dimensional
Ising chain with inverse-square interactions are calculated. Secondly, the
crossover from Ising-like to classical critical behavior in two-dimensional
systems is studied for several different interaction profiles.
