中文

伸展预序与后序

数据结构与算法 2019-07-16 v1

摘要

TT 为一棵二叉搜索树。我们证明关于 Splay 算法(Sleator 与 Tarjan,1985)行为的两个结果。我们的第一个结果是:以 TT 的预序或 TT 的后序顺序通过伸展将键插入空二叉搜索树所需时间为线性。我们的证明利用了预序与后序是避免模式的这一事实:即它们分别不包含与 (2,3,1)(2,3,1)(3,1,2)(3,1,2) 保序同构的子序列。模式避免意味着对插入方式施加了某些约束。我们利用这一结构,借助一个简单势函数,该函数统计位于通往未插入节点的访问路径上的已插入节点。我们的方法很可能推广到避免更一般模式的排列。其次,若 TT' 为任意其他与 TT 具有相同键且 TT 是权重平衡的(Nievergelt 与 Reingold,1973)的二叉搜索树,则从 TT' 出发伸展 TT 的预序序列或 TT 的后序序列所需时间为线性。为证明此点,我们证明平衡搜索树的预序与后序在对称序中不包含许多大的“跳跃”,并利用动态手指定理(Cole 等人,2000)这一事实。我们的两个结果均为难以捉摸的“动态最优性猜想”提供了进一步的证据。

关键词

引用

@article{arxiv.1907.06309,
  title  = {Splaying Preorders and Postorders},
  author = {Caleb C. Levy and Robert E. Tarjan},
  journal= {arXiv preprint arXiv:1907.06309},
  year   = {2019}
}