The Complexity of Finding Cycles in Periodic Functions.

R SEDGEWICK,TG SZYMANSKI,AC YAO
DOI: https://doi.org/10.1137/0211030
1979-01-01
Abstract:Given a function f over a finite domain D and an arbitrary starting point x , the sequence $f^0 (x),f^1 (x),f^2 (x), \cdots $ is ultimately periodic. Such sequences are typically the output of random number generators. The cycle problem is to determine the first repeated element $f^n (x)$ in the sequence. Previous algorithms for this problem have required $3n + O(1)$ operations. In this paper we show that $n(1 + \Theta (1/\sqrt M ))$ steps are both necessary and sufficient, if M memory cells are available to store values of the function. We explicitly consider the performance of the algorithm as a function of the amount of memory available and the relative cost of evaluating f and comparing sequence elements for equality.
What problem does this paper attempt to address?