Novel O(H(N)+N/H(N)) Algorithmic Techniques for Several Types of Queries and Updates on Rooted Trees and Lists
在本文中,我们提出了一种新的算法技术与O(H(N)+N/H(N))时间复杂度执行几种类型的查询和更新一般根树,二叉搜索树和大小为N的列表。对于有根树,我们引入了一种新的压缩超节点树表示,可用于有效地解决广泛的应用。对于二叉查找树,我们讨论的想法,全球重建整个树在一个完全平衡的方式时,树的高度超过了一个方便选择的函数的值的树节点的数量。最后介绍了支持连接、拆分和多种查询的H-表数据结构。注意,当选择H(N)=sqrt(N)时,我们得到O(H(N)+N/H(N))=O(sqrt(N))。
2013-03-21 cs.DS
External-memory dictionaries with worst-case update cost
$B^ε$树[Brodal and Fagerberg 2003]是一种简单的I/O高效外部内存模型数据结构,它支持比B树快几个数量级的更新,查询性能与B树相当:对于任何正的恒定$ε<1$插入和缺失需要$O(\frac{1}{B^{1-ε}}\log_{B}N)$时间(而不是传统B树的$O(\log_BN)$时间),查询需要$O(\log_BN)$时间,返回$k$项的范围查询需要$O(\log_BN+\frac{k}{B})$时间。尽管$B^ε$树具有最优的更新/查询折衷,但是运行时被分摊。另一种结构是Bender等人[PODS 2017]引入的写优化跳表,它与$B^ε$树具有相同的性能,但运行时是随机的,而不是摊销的。在本文中,我们提出了一个变种的$B^ε$树与确定性的最坏情况下的运行时间是相同的原始的摊销运行时间。
2022-11-11 cs.DS
One-Phase Batch Update on Sparse Merkle Trees for Rollups
本文研究zkSync Lite中的稀疏Merkle树算法,提出一种高效的批量更新算法,将账户更新时间从$\mathcal{O}(\log n)$降至$\mathcal{O}(1)$,并通过单次遍历将批量更新成本减半。
2023-10-20 cs.DS
Multidimensional segment trees can do range updates in poly-logarithmic time
区间的更新和查询是一个经典的算法问题,有着广泛的应用。段树数据结构在处理范围查询和更新操作方面特别值得注意。段树将范围划分为不相交的段,并将它们合并在一起,以优雅地执行范围查询和范围更新。虽然这种数据结构对于一维问题是非常有效的,但它在更高维度上是不够的。惰性传播使操作能够在$O(logn)$时间内在单个维度中计算。然而,惰性传播的概念不能被转换为更高维的情况,这对$k$维数据上的操作施加了$O(n^{k-1} \; logn)$的时间复杂度。在这项工作中,我们尝试以不同的方式模拟惰性传播的想法,以便它可以应用于二维情况。此外,所提出的修改应该能够执行类似于原始段树的最一般的聚合函数,并且还可以扩展到更高的维度。我们提出的算法管理执行范围和查询和更新的$O(\log^2 n)$时间为2维的问题,这成为$O(\log^d n)$的$d$维的情况。
2020-12-06 cs.DS
Dynamic Connectivity, Minimum Spanning Tree, and 2-Edge Connectivity with Polylogarithmic Worst-Case Update Time
ETH Zurich(苏黎世联邦理工学院)
本文提出全动态图算法,以多对数最坏情况更新时间维护连通性、最小生成树和2-边连通性,改进先前次多项式界限,并指出确定性扩展器分解可带来确定性算法。
2026-10-02 cs.DS
Computing Minimum Spanning Trees with Uncertainty
我们考虑的最小生成树问题中的设置给定的图的边权重的信息是不确定的。最初,对于图的每个边$e$,仅已知包含实际边权重$w_e$的称为不确定区域的集合$A_e$。该算法可以“更新”$e$以获得边权重$w_e \in A_e$。任务是在最小更新次数后输出最小生成树的边集。如果一个算法使$k$的更新次数至多为最优值的$k$倍,则该算法是$k$ -更新竞争的。如果所有区域$A_e$都是开放的或平凡的,我们提出了一个2-更新的竞争算法,这是最好的确定性算法。区域$A_e$上的条件是排除退化输入,对于退化输入,不存在恒定更新竞争算法。接下来,我们考虑一个设置,其中图的顶点对应于欧几里得空间中的点,并且边的权重等于其端点的距离。每个点的位置最初作为不确定区域给出,更新后会显示该点的确切位置。我们给出了一个问题的边的不确定性和顶点的不确定性版本之间的一般关系,并使用它来获得一个4更新的竞争算法的最小生成树问题的顶点不确定性模型。我们再次证明,这是确定性算法中最好的可能性。
2008-02-20 cs.DS
Efficient Self-Adjusting Search Trees via Lazy Updates
针对现有自调整搜索树存在的无静态最优性、实现复杂低效等问题,提出基于非自适应结构、通过惰性更新构建自调整搜索树的新方法,得到多种高效自调整树,降低指针操作、提升缓存效率并支持并发实现。
2023-10-08 cs.DS
UFO Trees: Practical and Provably-Efficient Parallel Batch-Dynamic Trees
University of Maryland(马里兰大学)
UFO树是一种高效并行批量动态树数据结构,支持广泛查询,具有低空间使用率,适用于大规模输入。
2026-01-15 cs.DS
Dynamic DFS Tree in Undirected Graphs: breaking the $O(m)$ barrier
深度优先搜索(DFS)树是解决图中各种问题的基本数据结构.众所周知,对于给定的无向图$G=(V,E)$,在$n$顶点和$m$边上构建DFS树需要$O(m+n)$时间。我们解决的问题,维护DFS树时,图正在进行{ \em更新}(插入和删除顶点或边)。我们对这个问题给出了以下结果。(a)容错DFS树:存在大小为${O}(m ~polylog~ n)$的数据结构,使得给定失效顶点或边的任何集合${\cal F}$,可以在${O}(n|{\cal F}| ~polylog~ n)$时间内报告图$G\setminus {\cal F}$的DFS树。(b)完全动态DFS树:存在用于维护DFS树的完全动态算法,其对于任何在线更新序列每次更新花费最坏情况的${O}(\sqrt{mn} ~polylog~ n)$时间。(c)增量DFS树:给定任意在线边插入序列,我们可以在每次边插入的${O}(n ~polylog~ n)$最坏情况时间内维护DFS树。这些是在动态环境中维护DFS树的第一个$o(m)$最坏情况时间结果。此外,我们的完全动态算法提供了,在一个无缝的方式,第一个确定性算法与$O(1)$查询时间和$o(m)$最坏情况下的动态子图的连接,双连通性,2边连接的更新时间。
2018-02-07 cs.DS
Dynamic Treewidth in Logarithmic Time
University of Copenhagen(哥本哈根大学)
提出一种维护树宽至多k的动态图树分解的数据结构,均摊更新时间为2^{O(k)}log n,并支持动态规划方案,改进了先前结果且更简单。
2026-09-24 cs.DS
MSO Queries on Trees: Enumerating Answers under Updates Using Forest Algebras
提出维护无秩树的对数高度森林代数表示,支持O(n)构建和O(log n)更新,并用于高效枚举局部更新树上MSO查询答案,实现O(log n)延迟及更新后快速重启枚举。
2025-10-02 cs.DS cs.LO
Succinct Partial Sums and Fenwick Trees
我们认为,在简洁的空间,其中一个是保持一个数组的n k位整数更新,使部分和查询可以有效地回答研究部分和问题。我们提出了两个简洁版本的芬威克树-这是众所周知的简单性和实用性。我们的结果在编码模型中成立,其中允许从输入数据中重用空间。我们的主要结果是第一个只需要nk + o(n)位的空间,同时仍然支持O(log_b n)/ O(b log_b n)时间的求和/更新,其中2 <= b <= log^O(1)n。第二个结果示出了如何在仅将空间使用略微增加到nk + o(nk)位的同时实现求和/更新的最佳时间。除了Fenwick树之外,结果主要基于位打包和采样-这使得它们非常实用-并且它们还允许简单的最佳并行化。
2017-05-31 cs.DS
Path and Ancestor Queries on Trees with Multidimensional Weight Vectors
我们考虑$n$节点上的序树$T$,每个节点分配一个$d$维权重向量$\pnt{w} \in \{1,2,\ldots,n\}^d,$,其中$d \in \mathbb{N}$是一个常数.我们研究路径查询的推广众所周知的{ \textit{orthogonal range queries} },其中一个维度是树拓扑结构,而不是线性顺序。由于在我们的定义中$d$只表示权重向量的维数而不考虑树的拓扑结构,因此具有$d$维权重向量的树中的路径查询推广了相应的$(d+1)$维正交范围查询。我们解决{ \textit{ancestor dominance reporting} }问题作为支配报告问题的直接推广,时间上的%$Ø((\lg^{d-1} n)/(\lg\lg n)^{d-2}+k)$时间上的$Ø(\lg^{d-1}{n}+k)$ %和$Ø(n(\lg n)^{d-1}/(\lg \lg n)^{d-2})$字的空间,以及$Ø(n\lg^{d-2}n)$字的空间,其中$k$是输出的大小,对于$d \geq 2.$,我们还实现了$Ø(n\lg^{d-2+\eps}{n})$字的空间的折衷,对于相同的问题,查询时间为$Ø((\lg^{d-1} n)/(\lg\lg n)^{d-2}+k),$,当$d \geq 3.$时我们在$Ø(n\lg^{d-1}{n})$中求解{ \textit{pa…
2019-10-02 cs.DS
Maintaining Information in Fully-Dynamic Trees with Top Trees
我们引入顶树作为一个新的更简单的接口,数据结构维护信息在一个完全动态的森林设计。我们展示了它们在不同应用程序中的易用性和通用性。例如,我们展示了如何保持森林中每棵树的直径、中心和中位数。森林可以通过插入和删除边以及更改顶点和边权重来更新。每次更新都需要O(log n)时间,其中n是更新涉及的树的大小。此外,我们展示了如何支持最近的共同祖先查询和水平祖先查询任意根在O(log n)的时间。最后,对于标记和未标记的顶点,我们展示了如何计算到最近的标记顶点的距离。后者可应用于一般图中最近标记点的近似,从而可应用于最短路度量的静态优化问题。从技术上讲,顶树容易用Frederickson的拓扑树[用于动态2-Edge-Connectivity和k最小生成树的矛盾数据结构,SIAM J. Comput.第26(2)页。484-538,1997]或使用Sleator和Tarjan的动态树[A数据结构for Dynamic Trees. J. Comput.《系统科学》,第26卷,第3页。362-391,1983]。然而,我们声称,该接口是简单的许多应用程序,实际上我们的新的界限是二次改进以前的界限,他们存在。
2003-11-21 cs.DS
Near Optimal Parallel Algorithms for Dynamic DFS in Undirected Graphs
深度优先搜索(DFS)树是求解图问题的基本数据结构。对于具有$n$顶点和$m$边的给定图$G$,用于构建DFS树的经典算法[SiComp 74]需要$O(m+n)$时间。最近,Baswana等人[SODA 16]提出了一种在$\tilde{O}(n)$时间内更新边/顶点后更新无向图DFS树的简单算法。然而,他们的算法是严格顺序的。我们提出了一个算法实现类似的界限,可以很容易地采用并行环境。在并行模型中,DFS树可以在EREW PRAM上使用$m$处理器在预期的$\tilde{O}(1)$时间[SiComp 90]内从头开始计算,而最佳确定性算法在CRCW PRAM上需要$\tilde{O}(\sqrt{n})$时间[SiComp 90,JAlg 93]。我们的算法可以用来开发最佳的(最多polylog n因子确定性算法,以保持完全动态DFS和容错DFS,无向图。1-并行全动态DFS:给定一个任意的在线顶点/边更新序列,我们可以在EREW PRAM上使用$m$处理器在每次更新的$\tilde{O}(1)$时间内维护无向图的DFS树。2-并行容错DFS:可以预处理无向图以构建大小为O(m)的数据结构,使得对于图中的一组$k$更新(其中$k$是常数),可以使用EREW PRAM上的$n$处理器在$\tilde{O}(1)$时间内计算更新的DFS树。此外,我们的完全动态DFS算法提供,在一…
2017-05-10 cs.DS
Dynamic Maintenance of Low-Stretch Probabilistic Tree Embeddings with Applications
我们给出了第一个非平凡的完全动态概率树嵌入算法的加权图进行边插入和删除。我们得到一个平衡之间的摊销更新时间和预期的拉伸对一个不经意的对手。在这种权衡的两个极端,我们可以维护具有更新时间$ m^{1/2 + o(1)} $的预期伸展$ O (\log^4 n) $的树或具有更新时间$ n^{o(1)} $的预期伸展$ n^{o(1)} $的树(对于$ n $中的边权重多项式)。到目前为止,后一种类型的保证仅用于维护具有平均(而不是预期)拉伸的树嵌入[Jehik/Zhang,SODA '20]。我们的主要结果有直接的影响,全动态近似距离预言机和全动态批量购买网络设计。对于动态距离预言机,我们的结果是第一个打破$ O (\sqrt{m}) $更新时障碍的结果。对于批量购买网络设计,这也是在静态设置严重依赖于概率树嵌入的问题,我们给出了第一个非平凡的动态算法。由于概率树嵌入是静态近似算法中的一个重要工具,我们的结果在动态近似算法中的进一步应用是可以想象的。从技术的角度来看,我们通过首先设计一个递减算法,通过Bartal的球生长方法[FOCS '96]的精心组合,与修剪框架的Rehik和张[SODA '20]的概率低直径分解,我们得到了我们的主要结果。然后,我们扩展到一个完全动态的算法,通过丰富一个众所周知的“递减到完全动态”减少一个新的自举的想法,递归地采用一个完全动态的算法,而不是一个静…
2020-04-23 cs.DS
MTASet: A Tree-based Set for Efficient Range Queries in Update-heavy Workloads
针对更新密集型工作负载下并发集合原子范围查询低效的问题,提出基于并发 (a,b)-tree 的 MTASet,在保证线性一致性的同时将范围查询性能提升至现有方案的 2 倍。
2025-07-26 cs.DC cs.DS
Dynamic Low-Stretch Trees via Dynamic Low-Diameter Decompositions
在非树边缘上具有低平均拉伸的生成树,如Alon等人[SICOMP 1995]所介绍的,是一个自然的图论对象。近年来,它们在对称对角占优(SDD)线性系统的求解器中得到了重要的应用。在这项工作中,我们提供了第一个动态算法,用于维护这样的树下的边插入和删除的输入图。我们的算法具有更新时间$ n^{1/2 + o(1)} $,并且维护的树的平均拉伸是$ n^{o(1)} $,其匹配Alon等人的开创性结果中的拉伸。类似于Alon等人,我们的动态低伸展树算法采用低直径分解(LDD)的动态层次结构。作为主要构建模块,我们使用动态LDD,该动态LDD是通过将Miller等人的随机移位聚类[SPAA 2013]适应动态设置而获得的。我们的方法中的主要技术挑战是控制LDD层次结构中更新的传播:层次结构中一个级别的每次更新都可能导致层次结构中下一个级别的多次插入和删除。我们通过先进的摊销方法实现这一目标。我们相信,动态随机移位聚类可能是有用的独立的应用。这些应用之一是动态规划问题。通过将随机移位聚类与Elkin和Neiman的最新结构相结合[SODA 2017]。我们得到了一个完全动态的算法,以保持一个扩展$ 2k - 1 $和大小$ O (n^{1 + 1/k} \log{n}) $与摊销更新时间$ O (k \log^2 n) $为任何整数$ 2 \leq k \leq \log n $。与该方…
2019-06-24 cs.DS
Dynamic Dyck and Tree Edit Distance: Decompositions and Reductions to String Edit Distance
本文通过分解与到字符串编辑距离的归约,首次给出次多项式更新时间的动态 Dyck 和树编辑距离近似算法,并改进树编辑距离静态近似界。
2025-10-20 cs.DS
Improved Solution to the Non-Domination Level Update Problem
非支配水平更新问题是指在插入或删除解后对非支配前沿进行排序。一般来说,这个问题的解决方案需要执行完全的非支配排序,这在比较次数方面太昂贵了。最近提出了一种有效的非支配级更新(ENLU)方法,它不执行完整的排序。为此,本文提出了一种空间有效的版本的ENLU方法,而不影响比较的数量。然而,这种方法并不是在所有情况下都能令人满意地工作。因此,我们还提出了另一种基于树的方法来解决这个非支配水平更新问题。在插入的情况下,基于树的方法总是检查相同数量的前沿,这与线性方法不同,线性方法中要检查的前沿数量取决于插入的解决方案。结果表明,在所有的解决方案是占主导地位的性质的情况下,使用基于树的方法的比较的最大数量是$\mathcal{O}(\log N)$,而不是$\mathcal{O}(N)$在ENLU方法。当所有的解决方案被平均划分为$K$前沿,使得每个解决方案在一个前沿是占主导地位的所有解决方案在前一个前沿,然后找到一个删除的解决方案在基于树的方法的情况下的比较的最大数量是$K{-}\log K$小于ENLU方法。在此基础上提出了一种在线排序算法,并对该算法进行了竞争分析。
2015-10-16 cs.DS
A Constant Optimization of the Binary Indexed Tree Query Operation
有几种数据结构可以有效地计算数组的前缀和,同时处理数组上的点更新,例如段树和二进制索引树(BIT)。这两种数据结构都可以在$O(\log{n})$时间内处理这两个操作(查询和更新)。在本文中,我们提出了一个类似于BIT的数据结构,但具有更小的常数。要做到这一点,我们使用Zeckendorf定理,斐波那契数列的一个属性。新的数据结构实现了与$O(\log{n})$相同的复杂度,但是与最坏情况下BIT查询操作所需的$\log_{2} n$计算相反,查询操作需要大约$\log_{ϕ^{2}} n$计算。
2016-12-29 cs.DS
Enumeration on Trees with Tractable Combined Complexity and Efficient Updates
我们给出了一个算法来枚举树的一元二阶(MSO)查询表示的不确定树自动机的结果。在线性时间预处理(在输入树中)之后,我们可以枚举具有线性延迟的答案(在每个答案中)。我们允许在树上的更新在任何时候发生,然后我们可以在树中的对数时间之后重新开始枚举。此外,我们所有的组合复杂度在自动机中是多项式的。我们的结果遵循我们以前的基于电路的枚举算法的基础上确定性树自动机,也受到我们以前的结果的启发,在文档speries的上下文中的单词和非确定性顺序扩展变量集自动机。我们扩展这些结果,并将它们与最近的树平衡计划Niewerth,使我们的枚举结构支持更新的基础树在对数时间(叶插入,叶删除,和节点重新标记)。我们的结果意味着,对于MSO查询与自由的一阶变量,我们可以枚举的结果与线性预处理和常数延迟和更新的基础树在对数时间,这改善了几个已知的结果的话和树。从数据结构的研究下界的基础上,我们还无条件地表明,我们的算法的更新时间的双对数因子是最佳的。因此,与其他设置不同,不可能存在具有恒定更新时间的算法。
2019-08-27 cs.DB cs.DS cs.FL
Parallel Dynamic Spatial Indexes
UC Riverside(加州大学河滨分校)
本文提出并行正交树和SPaC树族,以实现高效动态空间数据的批量更新,同时保持查询性能。
2026-01-08 cs.DB cs.DS
Parallel Batch-Dynamic $k$d-Trees
$k$ d树被广泛应用于并行数据库中以支持高效的邻域/相似性查询。因此,支持并行更新$k$ d树是一个重要的操作。在本文中,我们提出了BDL树,一个并行,批量动态实现的$k$ D树,允许高效的并行$k$ -NN查询动态变化的点集。BDL-树由一组日志结构的$k$ d-树组成,它可以用来以多对数深度并行地有效地插入或删除批量点。具体地说,给定一个具有$n$点的BDL树,每批$B$更新都需要$O(B\log^2{(n+B)})$分摊工作和$O(\log(n+B)\log\log{(n+B)})$深度(并行时间)。我们提供了BDL树的优化多核实现。我们的优化包括并行缓存无关的$k$ d树构造和并行布隆过滤器构造。我们的实验在一个36核机器上使用各种合成和真实世界的数据集的双向超线程表明,我们的实现BDL树实现了一个自我相对加速高达$34.8\times$(平均$28.4\times$)的批量插入,高达$35.5\times$(平均$27.2\times$)的批量删除,和高达$46.1\times$(平均$40.0\times$)的$k$ -最近邻查询。此外,它实现了高达1450万次更新/秒的批并行更新和670万次查询/秒的$k$ -NN查询的吞吐量。我们比较两个基线$k$ d树的实现,并证明BDL树实现批量更新的两个基线选项之间的良好权衡。
2021-12-12 cs.DB cs.DS
Root-to-Leaf Scheduling in Write-Optimized Trees
本文研究写优化数据结构中从根到叶的高效消息刷新框架,提出一种O(1)-近似最优平均完成时间的算法,并给出树优先约束下加权完成时间并行任务调度的4-近似算法。
2024-04-26 cs.DS
A Sierpinski Triangle Data Structure for Efficient Array Value Update and Prefix Sum Calculation
本研究提出形似谢尔宾斯基三角的新型数据结构,在内存占用与Fenwick树相同的情况下,将数组值更新和前缀和计算的时间复杂度从$O(\log_2 N)$降至最优的$O(\log_3 N)$。
2024-03-06 cs.DS
Alphabet-Dependent String Searching with Wexponential Search Trees
如果坚持线性大小的数据结构和确定性的最坏情况运行时间,则广泛地假设$O(m+\lg σ)$是在存储大小为$σ$的字母表上的字符串的压缩trie中找到长度为$m$的模式所能做的最好的选择[Cole等人,ICALP'06]。在这篇文章中,我们首先展示了一个相当简单的组合,众所周知的想法产生$O(m+\lg\lg σ)$确定性的最坏情况下的静态尝试搜索时间。然后,我们继续进行动态尝试,其中我们实现每个查询或更新的$O(m+\frac{\lg^{2}\lgσ}{\lg\lg\lgσ})$的最坏情况界限,这应该再次与先前已知的$O(m+\lgσ)$确定性最坏情况界限进行比较[Cole等人,ICALP'06],以及依赖于字母表\emph{in}的$O(m+\sqrt{\lg n/\lg\lg n})$确定性最坏情况界限[Andersson和Thorup,SODA'01],其中$n$是trie中的节点数。我们的更新过程的基础是指数搜索树的加权变体,虽然简单,但可能是独立的兴趣。作为一个特定应用,上述界限(静态和动态)适用于后缀树。在那里,更新对应于在文本中添加或追加一个字母,另外一个目标是更新比重新匹配整个后缀更快。我们展示了如何在$O(\lg\lg n + \frac{\lg^{2}\lgσ}{\lg\lg\lgσ})$时间内做到这一点,这改善了先前已知的$O(\lg n)$结合[Amir等人…
2013-02-14 cs.DS
Dynamic Breadth First Search with Predictions
Indian Institute of Technology Roorkee(印度理工学院罗克省)
针对在线边更新序列,利用预测模型维护BFS树,提出增量、减量和全动态算法,复杂度基于预测误差度量。
2026-10-03 cs.DS
Banana Trees for the Persistence in Time Series Experimentally
本文实现并实验评估面向动态时间序列持久同调维护的 banana tree,证明其在无偏随机数据上优于现有静态算法,并因真实序列具有随机游走结构而具备实用潜力。
2025-03-19 cs.DS
Fully-Dynamic Approximate Decision Trees With Worst-Case Update Time Guarantees
University of Milan(米兰大学);Institut Polytechnique de Paris(巴黎理工学院);Télécom Paris(巴黎电信学院)
我们给出了第一个算法,保持一个近似的决策树在一个任意序列的插入和删除标记的例子,在最坏情况下的运行时间每个更新请求的强有力的保证。例如,我们展示了如何维护一个决策树,其中每个顶点都有基尼增益内的最佳附加$α$通过执行$O\Big(\frac{d\,(\log n)^4}{α^3}\Big)$基本操作每次更新,其中$d$是功能的数量和$n$的最大大小的活动集(更新请求的净结果)。我们给出了类似的信息增益和方差增益的界限。事实上,所有这些界限都是一个更一般的结果的推论,用决策规则来表述--给定一组$S$标记示例的函数,决定是分割$S$还是预测一个标记。决策规则给出了贪婪决策树算法的统一视图,而不管示例和标签域,并导致$ε$ -近似决策树的一般概念,对于自然决策规则,如ID 3或C4.5所使用的规则,意味着上述增益近似保证。我们工作的核心提供了一个确定性算法,给定任何决策规则和任何$ε> 0$,使用每次更新的$O\!\left(\frac{d\, f(n)}{n} \operatorname{poly}\frac{h}ε\right)$操作维护一个$ε$近似树,其中$f(n)$是在一组$n$示例上评估规则的复杂度,$h$是维护的树的最大高度。
2023-02-10 cs.AI cs.DS cs.LG
Hardness of Dynamic Tree Edit Distance and Friends
University of California, San Diego(加利福尼亚大学圣地亚哥分校);Massachusetts Institute of Technology(麻省理工学院)
针对动态树编辑距离及相关问题,本文证明其无法实现动态加速并给出二次更新时间下界,首次分离了动态无权字符串与树编辑距离(静态难度未解决)。
2025-11-15 cs.DS
Parallel $k$d-tree with Batch Updates
本文提出兼具理论界与工程优化的并行 Pkd-tree,支持并行构建、批量更新及多种查询,并在多类数据集上显著优于现有并行基线。
2025-01-06 cs.DB cs.DC cs.DS
Fast Parallel Operations on Search Trees
使用(a,b)-树作为一个例子,我们展示了如何执行一个并行分裂对数延迟和并行连接,批量更新,交叉,工会(或合并),和(对称)集差与对数延迟和信息理论上最优的工作。我们提出了渐近最优的解决方案和简化的版本,在实践中表现良好-他们比以前的实现快几倍。
2016-05-11 cs.DS
An Improved Algorithm for Incremental DFS Tree in Undirected Graphs
深度优先搜索(DFS)树是用于设计高效图算法的最知名的数据结构之一。给定一个具有$n$顶点和$m$边的无向图$G=(V,E)$,教科书算法需要$O(n+m)$时间来构造DFS树。在本文中,我们研究的问题,维护DFS树时,图正在进行增量更新。形式上,我们显示:给定一个任意的边或顶点插入的在线序列,有一种算法可以在$O(n)$中报告DFS树,每个操作的最坏情况时间,并且需要$O\left(\min\{m \log n, n^2\}\right)$预处理时间。我们的结果改进了Baswana等人提出的$O(n \log^3 n)$最坏情况更新时间算法和Nakamura和Sadakane提出的$O(n \log n)$时间算法,并在需要显式输出DFS树时匹配了平凡的$Ω(n)$下界.我们的结果建立在Baswana等人的突破性工作中引入的框架之上,以及Duan和Zhan对树划分引理的新颖使用,以及Chazelle和Guibas著名的分数级联技术。
2018-02-20 cs.DS
Tree-Packing Revisited: Faster Fully Dynamic Min-Cut and Arboricity
TU Graz(格拉茨工业大学);University of Salzburg(萨尔茨堡大学);Technical University of Denmark(丹麦技术大学)
本文重新审视树打包与最小割的关系,证明只需维护Θ(λ³ log m)棵贪心树即可保证1-尊重割或平凡割,并基于此给出确定性全动态精确最小割算法,最坏情况更新时间为Õ(λ^{5.5}√n),同时首次给出全动态分数树密度的(1+ε)-近似算法。
2026-08-20 cs.DS
FB$^+$-tree: A Memory-Optimized B$^+$-tree with Latch-Free Update
本文提出FB$^+$-tree,一种结合B$^+$-tree和trie优势的内存优化索引结构,通过特征字节分支和乐观锁实现无锁更新,在多线程下性能显著优于传统B$^+$-tree。
2025-03-30 cs.DB cs.DS cs.PF
The Expander Hierarchy and its Applications to Dynamic Graph Algorithms
我们引入了一个概念,层次图聚类,我们称之为扩展层次结构,并显示了一个完全动态的算法,用于维护这样的层次结构上的图形与$n$顶点进行边插入和删除使用$n^{o(1)}$更新时间。扩展器层次结构是图的树表示,其忠实地捕获割流结构,因此我们的动态算法几乎立即暗示了几个结果,包括:(1)具有$n^{o(1)}$最坏情况更新时间的第一个完全动态算法,其允许在$O(\log^{1/6} n)$时间内查询任何给定$(s,t)$的$n^{o(1)}$ -近似电导、$s$-$t$最大流和$s$ - $t$最小割。我们的结果是确定性的,并延伸到多商品的削减和流动。这些结果背后的关键思想是一个完全动态的算法,用于维护树流稀疏,Räcke [FOCS'02]为构建竞争性不经意路由方案引入的概念。(2)一种具有$n^{o(1)}$最坏情况更新时间的确定性全动态连通性算法。这大大简化了Chuzhoy等人最近的算法。它使用Nanongkai等人的框架。[FOCS'17]。(3)第一个非平凡的确定性的完全动态树宽分解算法的恒定度图与$n^{o(1)}$最坏情况的更新时间,保持树宽分解的宽度$\text{tw}(G)\cdot n^{o(1)}$其中$\text{tw}(G)$表示当前图的树宽。我们的技术是基于一个新的更强的概念的扩展分解,称为边界连接扩展分解。这种分解对更新更鲁棒,并且更好地捕获图的聚类结构。由于…
2020-07-21 cs.DS
Fully Persistent Dynamic LCE via AVL Trees and AVL Grammars
Graduate School of IST, Hokkaido University(北海道大学信息理工学院研究生院);Department of Informatics, Kyushu University(九州大学信息系)
提出FeAVL结构,通过AVL树的路径复制实现完全持久动态字符串的相等性和最长公共扩展查询,支持最坏情况O(log n)时间操作,并给出基于AVL文法的压缩实例化。
2026-07-03 cs.DS
An O(log(n)) Fully Dynamic Algorithm for Maximum matching in a tree
在本文中,我们已经开发了一个全动态的算法,保持基数的最大匹配树使用的顶树的建设。其时间复杂度如下:1.创建时间:$O(n(log(n)))$以构建顶层树。2.更新时间:$O(log(n))$ 3.查询时间:O(1)查询最大匹配的基数和$O(log(n))$查找特定边是否匹配。
2009-01-19 cs.DS
Parallel Batch-dynamic Trees via Change Propagation
动态树的问题是维护一个森林的边缘插入和删除,同时促进查询,如连接,路径权重,和子树的权重。动态树是大量图算法的基本构建块。虽然传统上研究的单次更新设置,能够支持批量更新的动态算法是越来越相关的今天,由于快速发展的动态数据集的出现。由于在单个处理器上处理更新对于大批量的更新通常是不现实的,因此设计实现可证明的低跨度的并行批动态算法对于许多应用是重要的。在这项工作中,我们设计了第一个工作效率的并行批动态算法的动态树,能够支持路径查询和子树查询,以及各种非本地查询。为了实现这一目标,我们提出了一个框架,算法动态静态轮同步算法,使我们能够获得并行批动态算法的工作和跨度上的良好界限。在我们的框架中,算法设计者可以将该技术应用于任何适当定义的静态算法。然后,我们获得理论上的保证,在我们的框架中的算法,通过定义的概念,两个执行的底层算法之间的计算距离。我们的动态树算法是通过将我们的动态化框架应用于Miller和Reif的并行树收缩算法而得到的,然后对该算法在批量更新下的计算距离进行了新的分析。我们表明,$k$更新可以在$O(k \log(1+n/k))$工作中进行预期,这与Tseng等人的现有算法相匹配。同时为大量的查询和应用程序提供支持。
2020-05-17 cs.DC cs.DS
Stratified B-trees and versioning dictionaries
在存储和计算机科学中,一个经典的版本化数据结构是写时复制(CoW)B树--它是当今许多文件系统和数据库的基础,包括WAFL、NTFS、Btrfs等。不幸的是,它没有继承B树的最优属性;它的空间利用率很低,不能提供快速更新,并且依赖于随机IO来扩展。然而,从那以后就没有更好的了。我们描述了“分层B树”,它击败了所有已知的半外部内存版本的B树,包括牛B树。特别是,它是第一个在空间,查询和更新性能之间实现最佳权衡的版本化字典。
2011-03-30 cs.DB cs.DS
A New Algorithm for Updating and Querying Sub-arrays of Multidimensional Arrays
给定$d$维数组$A$,更新操作将给定常数$C$添加到$A$的连续子数组内的每个元素。查询操作计算$A$的连续子数组中所有元素的和。一维更新和查询处理问题已经被深入研究,通常使用带有惰性传播技术的段树来解决。在本文中,我们提出了一个新的算法,结合二叉索引树和包含-排除原则来完成同样的任务。我们扩展算法更新和查询矩阵(二维数组)的子矩阵。最后,我们提出了一个一般形式的算法$d$ -维实现$\mathcal{O}(4^d*\log^{d}n)$时间复杂度的更新和查询。这是对先前已知的算法的改进,先前已知的算法利用像四叉树和八叉树的分层数据结构,并且具有每次更新/查询的$Ω(n^{d-1})$的最坏情况时间复杂度。
2016-08-03 cs.DS
Streamed Graph Drawing and the File Maintenance Problem
在流式图形绘制中,平面图G作为数据流递增地给出,并且在每个新的边被释放之后必须更新G的直线图。为了保持心理地图,每次更新后,对绘图的更改应最小化,Binucci et al.show认为,如果不允许边缘移动,指数区域对于树的一些流图绘图是必要的和足够的。我们表明,一些流图图纸可以,事实上,多项式区域,包括平面流图图纸的树,树地图,和outerplanar图,如果我们允许少量的坐标移动后,每次更新。我们的算法涉及一个有趣的连接到一个经典的算法问题-文件维护问题-我们也给这个问题的新算法在一个框架中,允许大容量内存移动。
2013-08-30 cs.DS
Fully Dynamic Breadth First Search and Spanning Trees in Directed Graphs
ELTE Eötvös Loránd University(厄特沃什·罗兰大学)
本文提出一种在有向图中维护BFS生成树及其层次信息的全动态算法框架,支持边插入和删除操作下的最短路径和可达性维护。
2026-04-14 cs.DS
What Does Dynamic Optimality Mean in External Memory?
在本文中,我们重新审视的问题,搜索树的动态最优性应该如何定义在外部存储器。外部存储器数据结构的一个定义特征是,查询和插入/更新/删除之间存在明显的不对称性:通过使前者稍微渐进地慢一些,可以使后者明显渐进地快一些(甚至允许使用子常数摊销I/O的操作)。这种不对称性使得基于旋转的搜索树在插入/更新/删除繁重的外部内存工作负载中不是最佳的(甚至接近最佳)。为了研究这种工作负载的动态最优性,必须考虑不同类别的数据结构。要考虑的数据结构的自然类是我们称之为缓冲传播树的。这样的树可以动态地适应输入序列的局部属性,以优化不同插入/更新/删除和查询之间的交互。我们还提出了一种新形式的超越最坏情况的分析,使我们能够正式研究静态和动态最优之间的连续体。最后,我们给出了一种新的数据结构,称为\jellotree,这是静态最优的,并实现动态最优的一个大的自然类的输入定义我们超越最坏情况下的分析。
2022-04-21 cs.DS
Parallel batch queries on dynamic trees: algorithms and experiments
本文改进批量并行动态树,推广RC树至任意度数,支持多种批量查询,实现首个通用版本,实验验证良好加速比与稳健性。
2025-06-19 cs.DS
Dynamic "Succincter"
本文将Patrascu的静态succincter技术动态化,设计出仅用三位冗余的动态aB树,并据此构造了更新与查询时间最优的动态完全可索引字典,显著降低了冗余空间。
2023-09-22 cs.DS
Fast and Theoretically-Efficient Batch-Parallel Link-Cut Trees, Euler Tour Trees, and Treaps
University of Maryland(马里兰大学)
本文提出MOJOS框架,利用Treaps构建批量动态序列,实现首个理论上高效的批量并行Link-Cut树,支持路径查询且深度为O(log n),性能优于现有并行批量动态树。
2026-09-15 cs.DS
Parallel Nearest Neighbors in Low Dimensions with Batch Updates
我们提出了一套并行算法计算精确的k-近邻在低维。许多k-最近邻算法使用kd树或莫顿排序的点集,我们的算法结合这些方法使用的数据结构,我们称之为\textit{zd-tree}。我们表明,这种组合是理论上有效的共同假设下,并在实践中快速。对于具有有界扩展常数和有界比率的大小为$n$的点集,可以在$O(n)$工作中构建zd树,其中$O(n^ε)$跨度为常数$ε<1$,并且搜索点的$k$ -最近邻需要预期的$O(k\log k)$时间。我们对现有的并行k-最近邻算法的k-最近邻算法进行基准测试,表明我们的实现通常比现有技术更快,并且在144个超线程上实现了75倍的加速比。此外,zd树支持并行批动态插入和删除;据我们所知,它是第一个支持这种更新的k-最近邻数据结构。在具有有界扩展常数和有界比率的点集上,批量动态更新大小$k$需要$O(k \log n/k)$与$O(k^ε + \text{polylog}(n))$跨度一起工作。
2021-11-07 cs.CG cs.DS
Dynamic Indexability: The Query-Update Tradeoff for One-Dimensional Range Queries
B树是一种基本的二级索引结构,广泛用于回答一维范围报告查询。给定一组$N$键,可以在$O(\log_B \nm + \frac{K}{B})$ I/O中回答范围查询,其中$B$是磁盘块大小,$K$是输出大小,$M$是主存缓冲区的大小。当插入或删除键时,如果我们要求立即将结果更改提交到磁盘,则B树将在$O(\log_B N)$ I/O中更新。否则,可以使用内存缓冲区来缓冲最近的更新,并且可以将更改批量写入磁盘,这显著降低了摊销更新成本。一种系统的级联更新方法是使用对数方法,结合分数级联,产生一个动态B树,支持$O(\frac{1}{B}\log\nm)$ I/O中的插入和$O(\log\nm + \frac{K}{B})$ I/O中的查询。这样的边界也被数据库文献中的几个已知的动态B树变体所匹配。本文证明了对于任何具有查询代价$O(q+\frac{K}{B})$和摊销插入代价$O(u/B)$的动态一维范围查询索引结构,如果$q=O(\log B)$,则折衷方案$q\cdot \log(u/q) = Ω(\log B)$必须成立.对于最合理的参数值,我们有$\nm = B^{O(1)}$,在这种情况下,我们的查询插入折衷意味着上面提到的边界已经是最优的。我们的下界在{ \em可索引性模型}的动态版本中成立,这是独立的利益。
2008-11-26 cs.DB cs.DS
An Efficient and Scalable Auditing Scheme for Cloud Data Storage using an Enhanced B-tree
针对云存储动态数据完整性审计的性能与可扩展性问题,提出基于增强型 B-tree 的动态审计方案,支持插入、更新、删除,并在多项实验指标上优于 MHT 与区块链方案。
2024-01-17 cs.CR cs.DS
Dynamic Membership for Regular Tree Languages
针对重标记更新下正则树语言的动态成员问题,提出任意固定正则树语言的$O(\text{log}n/\text{log log}n)$算法,引入几乎交换树语言类并证明其常数时间更新特性,还证明该类在中性字母存在时的条件最优性。
2025-07-02 cs.DS cs.FL
Fully Dynamic Rooted Spanning Tree on GPU
Indian Institute of Technology Tirupati(蒂鲁帕蒂印度理工学院)
针对现实网络中边插入或删除时维护有根生成森林的挑战,提出四种全动态并行算法,经 GPU 环境实验,其每秒插入和删除吞吐量远超现有并行静态算法。
2026-07-23 cs.DC cs.DS
Stable Tree Labelling for Accelerating Distance Queries on Dynamic Road Networks
针对动态道路网络距离查询中标记规模大且难维护的问题,提出基于稳定树层次结构的2-hop标记方法STL及两种高效维护算法,显著提升了查询与更新性能并大幅降低了空间开销。
2025-01-29 cs.DB cs.DS