  Leapfrog integration has been the method of choice in N-body simulations
owing to its low computational cost for a symplectic integrator with second
order accuracy. We introduce a new leapfrog integrator that allows for variable
timesteps for each particle in large N-body simulations. Tests with single
particles in fixed potentials show that it behaves as a symplectic integrator.
  We then examine the results of both standard leapfrog and our temporally
adaptive leapfrog on full N-body integrations of clusters and large scale
structure establishing accuracy criteria for both methods. The adaptive method
shows significant speed-ups over single step integrations---but the integrator
no longer appears to be symplectic or, in the case of large scale structure
simulations, accurate. This loss of accuracy appears to be caused by the way
that the timestep is chosen, not by the integrator itself. We present a related
integration technique that does retain sufficient accuracy. Although it is not
symplectic, it is apparently better than previous implementations and is our
current integrator of choice for large astrophysical simulations. We also note
that the standard leapfrog difference equations used in cosmological N-body
integrations in comoving coordinates are not symplectic. We derive an
implementation of leapfrog that is in comoving canonical coordinates to correct
for this deficiency.
