  Run-times of quantum algorithms are often studied via an asymptotic,
worst-case analysis. Whilst useful, such a comparison can often fall short: it
is not uncommon for algorithms with a large worst-case run-time to end up
performing well on instances of practical interest. To remedy this it is
necessary to resort to run-time analyses of a more empirical nature, which for
sufficiently small input sizes can be performed on a quantum device or a
simulation thereof. For larger input sizes, alternative approaches are
required.
  In this paper we consider an approach that combines classical emulation with
detailed complexity bounds that include all constants. We simulate quantum
algorithms by running classical versions of the sub-routines, whilst
simultaneously collecting information about what the run-time of the quantum
routine would have been if it were run instead. To do this accurately and
efficiently for very large input sizes, we describe an estimation procedure and
prove that it obtains upper bounds on the true expected complexity of the
quantum algorithms.
  We apply our method to some simple quantum speedups of classical heuristic
algorithms for solving the well-studied MAX-$k$-SAT optimization problem. This
requires rigorous bounds (including all constants) on the expected- and
worst-case complexities of two important quantum sub-routines: Grover search
with an unknown number of marked items, and quantum maximum-finding. These
improve upon existing results and might be of broader interest.
  Amongst other results, we found that the classical heuristic algorithms we
studied did not offer significant quantum speedups despite the existence of a
theoretical per-step speedup. This suggests that an empirical analysis such as
the one we implement in this paper already yields insights beyond those that
can be seen by an asymptotic analysis alone.
