Zip- Zip树:使Zip树更加平衡、偏向、紧凑或持久

Ofek Gila, M. Goodrich, R. Tarjan
{"title":"Zip- Zip树:使Zip树更加平衡、偏向、紧凑或持久","authors":"Ofek Gila, M. Goodrich, R. Tarjan","doi":"10.48550/arXiv.2307.07660","DOIUrl":null,"url":null,"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 $1.3863\\log n-1+o(1)$, 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 $O(\\log\\log n)$ bits of metadata per node, w.h.p., as compared to the $\\Theta(\\log n)$ bits per node required by treaps. In fact, we even 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 \\emph{biased zip-zip trees}, which have an explicit bias based on key weights, so the expected depth of a key, $k$, with weight, $w_k$, is $O(\\log (W/w_k))$, 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.","PeriodicalId":380945,"journal":{"name":"Workshop on Algorithms and Data Structures","volume":"27 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-07-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Zip-zip Trees: Making Zip Trees More Balanced, Biased, Compact, or Persistent\",\"authors\":\"Ofek Gila, M. Goodrich, R. Tarjan\",\"doi\":\"10.48550/arXiv.2307.07660\",\"DOIUrl\":null,\"url\":null,\"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 $1.3863\\\\log n-1+o(1)$, 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 $O(\\\\log\\\\log n)$ bits of metadata per node, w.h.p., as compared to the $\\\\Theta(\\\\log n)$ bits per node required by treaps. In fact, we even 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 \\\\emph{biased zip-zip trees}, which have an explicit bias based on key weights, so the expected depth of a key, $k$, with weight, $w_k$, is $O(\\\\log (W/w_k))$, 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.\",\"PeriodicalId\":380945,\"journal\":{\"name\":\"Workshop on Algorithms and Data Structures\",\"volume\":\"27 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-07-14\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Workshop on Algorithms and Data Structures\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.48550/arXiv.2307.07660\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Workshop on Algorithms and Data Structures","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.48550/arXiv.2307.07660","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

我们定义了zip树的简单变体,称为zip-zip树,它提供了几个优于zip树的优点,包括克服了偏好小键而不是大键的偏见。我们从理论上和经验上分析了zip-zip树,例如,在$n$ -node zip-zip树中节点的期望深度最多为$1.3863\log n-1+o(1)$,这与由均匀随机插入构建的树堆和二叉搜索树的期望深度相匹配。但是,与这些其他数据结构不同,zip-zip树仅使用每个节点$O(\log\log n)$位元数据(w.h.p)来实现其边界,而treaps需要每个节点$\Theta(\log n)$位元数据。事实上,我们甚至描述了一个“即时”zip-zip树的变体,它只需要每个节点的预期的$O(1)$位数的元数据。此外,我们可以将zip-zip树定义为强历史独立的,而树堆通常只是弱历史独立的。我们还引入了有偏差的\emph{zip-zip树},它具有基于键权值的显式偏差,因此键$k$与权值$w_k$的期望深度为$O(\log (W/w_k))$,其中$W$是加权zip-zip树中所有键的权值。最后,我们展示了可以很容易地使zip-zip树部分持久,只需要$O(n)$空间开销w.h.p.。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Zip-zip Trees: Making Zip Trees More Balanced, Biased, Compact, or Persistent
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 $1.3863\log n-1+o(1)$, 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 $O(\log\log n)$ bits of metadata per node, w.h.p., as compared to the $\Theta(\log n)$ bits per node required by treaps. In fact, we even 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 \emph{biased zip-zip trees}, which have an explicit bias based on key weights, so the expected depth of a key, $k$, with weight, $w_k$, is $O(\log (W/w_k))$, 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.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信