Lecture Notes in Computer Science, 2003, Volume 2607/2003, 283-294, DOI: 10.1007/3-540-36494-3_26

Randomized Jumplists: A Jump-and-Walk Dictionary Data Structure

Hervé Brönnimann, Frédéric Cazals and Marianne Durand

View Related Documents

Abstract

This paper presents a data structure providing the usual dictionary operations, i.e. Contains, Insert, Delete. This data structure named Jumplist is a linked list whose nodes are endowed with an additional pointer, the so-called jump pointer. Algorithms on jumplists are based on the jump-and-walk strategy: whenever possible use to the jump pointer to speed up the search, and walk along the list otherwise. The main features of jumplists are the following. They perform within a constant factor of binary search trees. Randomization makes their dynamic maintenance easy. Jumplists are a compact data structure since they provide rank-based operations and forward iterators at a cost of three pointers/integers per node. Jumplists are trivially built in linear time from sorted linked lists.

Keywords  Dictionary data structures - Searching and sorting - Randomization - Asymptotic analysis

Extended abstract. Due to space limitations, all proofs have been omitted. Refer to [1] for the full paper.

Fulltext Preview

Image of the first page of the fulltext document