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

  • Authors:
  • Hervé Brönnimann;Frédéric Cazals;Marianne Durand

  • Affiliations:
  • -;-;-

  • Venue:
  • STACS '03 Proceedings of the 20th Annual Symposium on Theoretical Aspects of Computer Science
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

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.