Fast Dynamic Pointer Following via Link-Cut Trees
  In this paper, we study the problem of fast dynamic pointer following: given a directed graph $G$ where each vertex has outdegree $1$, efficiently support the operations of i) changing the outgoing edge of any vertex, and ii) find the vertex $k$ vertices `after' a given vertex. We exhibit a solution to this problem based on link-cut trees that requires $O(\lg n)$ time per operation, and prove that this is optimal in the cell-probe complexity model. 
Erik Demaine, Nathan Pinsker, and Jon Schneider
cs.DS