Consider a combined search from both ends. Also, recall that a link hop is an assignment of the form "p = p.next;" or "p = p.prev;".