@techreport{Brodal97,
TITLE = {Finger search trees with constant insertion time},
AUTHOR = {Brodal, Gerth St{\o}lting},
LANGUAGE = {eng},
NUMBER = {MPI-I-1997-1-020},
INSTITUTION = {Max-Planck-Institut f{\"u}r Informatik},
ADDRESS = {Saarbr{\"u}cken},
YEAR = {1997},
DATE = {1997},
ABSTRACT = {We consider the problem of implementing finger search trees on the pointer machine, {\it i.e.}, how to maintain a sorted list such that searching for an element $x$, starting the search at any arbitrary element $f$ in the list, only requires logarithmic time in the distance between $x$ and $f$ in the list. We present the first pointer-based implementation of finger search trees allowing new elements to be inserted at any arbitrary position in the list in worst case constant time. Previously, the best known insertion time on the pointer machine was $O(\log^* n)$, where $n$ is the total length of the list. On a unit-cost RAM, a constant insertion time has been achieved by Dietz and Raman by using standard techniques of packing small problem sizes into a constant number of machine words. Deletion of a list element is supported in $O(\log^* n)$ time, which matches the previous best bounds. Our data structure requires linear space.},
TYPE = {Research Report / Max-Planck-Institut für Informatik},
}