Skip to main navigation Skip to search Skip to main content

Zip-zip Trees: Making Zip Trees More Balanced, Biased, Compact, or Persistent

Research output: Contribution to journalArticlepeer-review

Abstract

We define simple variants of zip trees, called zip-zip trees, which provide several advantages over zip trees, including overcoming a bias that favors smaller keys over larger ones. We analyze zip-zip trees theoretically and empirically, showing, e.g., that the expected depth of a node in an n-node zip-zip tree is at most, which matches the expected depth of treaps and binary search trees built by uniformly random insertions. Unlike these other data structures, however, zip-zip trees achieve their bounds using only bits of metadata per node, w.h.p., as compared to the bits per node required by treaps. In addition, we describe a “just-in-time” zip-zip tree variant, which needs just an expected O(1) number of bits of metadata per node. Moreover, we can define zip-zip trees to be strongly history independent, whereas treaps are generally only weakly history independent. We also introduce biased zip-zip trees, which have an explicit bias based on key weights, so the expected depth of a key, k, with weight,, is, where W is the weight of all keys in the weighted zip-zip tree. Finally, we show that one can easily make zip-zip trees partially persistent with only O(n) space overhead w.h.p.

Original languageEnglish (US)
Article number40
JournalAlgorithmica
Volume88
Issue number3
DOIs
StatePublished - Jun 2026

All Science Journal Classification (ASJC) codes

  • General Computer Science
  • Computer Science Applications
  • Applied Mathematics

Keywords

  • Biased search trees
  • Compact data structures
  • History independence
  • Randomized binary search trees
  • Skip lists
  • Zip trees

Fingerprint

Dive into the research topics of 'Zip-zip Trees: Making Zip Trees More Balanced, Biased, Compact, or Persistent'. Together they form a unique fingerprint.

Cite this