“本页的 $O(\log n)$ 是有序数组、常数时间随机访问和比较模型下的最坏查询界。前驱问题把“找最后一个不超过 $x$ 的键”提升为可跨模型比较的接口,整数 Word RAM 能利用键的…”
形式陈述 ​
目录与增强 ​
给一条目录链
并为增强元素保存到原目录
查询不变量 ​
先在
目录按链排列只是最清楚的基型;在有界度目录图上也可沿访问路径推广同一思想,高出度则会因桥的复制而破坏线性空间界。
直觉
一次完整二分已经确定查询键在当前增强目录中的缝隙。相邻目录每隔常数个元素就把一个样本复制回来,并用桥记录对应位置,因此下一目录的正确缝隙只能在桥附近;之后只需常数次局部比较,而不必把已经获得的顺序信息丢掉再二分。
例子与边界
Range tree 例子 ​
二维范围树查询会访问根到分裂点附近的
不适用条件 ​
任意
常数定位为何成立 ​
设已知
若各目录长度差异大,总复杂度中的首项应写对首个增强目录规模的对数,或对总规模
推论与应用
桥指针的局部校正 ​
第一次在
桥必须分别记录增强目录位置和原目录位置。若查询需要在每个目录输出前驱,复制元素不能被误当成原目录成员;若目录之间没有固定图邻接、更新频繁破坏采样间隔,静态常数桥结论也不再成立。
参考资料
- Bernard Chazelle, Leonidas Guibas, Fractional Cascading I: A Data Structuring Technique, Algorithmica, 1986.
- Kurt Mehlhorn, Stefan Näher, Dynamic Fractional Cascading, Algorithmica, 1990.