“把其他问题归约到排序可以传递比较下界:把数 $x i$ 提升为抛物线上的点 $(x i,x i^2)$ 后,平面凸包的顶点序能读出排序。外存中的瓶颈却是块传输,排序 I/O 下界需要同时计…”
定理 ​
在两层外存模型中,假设
其中
信息计数图像 ​
排序必须区分
为什么底数是 M/B ​
多路归并在内存中为约
边界 ​
本页定理固定
Permuting 与 sorting ​
下界常先证明 permuting:把记录重排到任意指定顺序需要多少 I/O,再用排序产生的键次序编码排列。若记录可以拆成比原子更小片段或压缩许多键进一字,状态计数改变。反之,带 payload 的数据库记录排序通常正符合原子/indivisibility 假设。
max 项正是在统一表达这个边界。当
一个 I/O 能产生多少新排列 ​
内部内存一次容纳
的 comparison-based 排序下界。
当
下界衡量块传输,不计算内存内部比较次数。一个算法可以达到最优 I/O 却做更多 CPU 工作;外排序实践还要同时报告顺序读写、寻道和归并缓冲配置。
参考资料
- Alok Aggarwal and Jeffrey S. Vitter, “The Input/Output Complexity of Sorting and Related Problems,” Communications of the ACM 31(9), 1988, pp. 1116–1127;§2 给出含
的 I/O 模型,Theorem 3.1 给出 sorting/FFT 界,本页取单磁盘特例 。 - Jeffrey S. Vitter, Algorithms and Data Structures for External Memory, Foundations and Trends in Theoretical Computer Science 2(4), 2008, pp. 305–474;Chapter 5 “External Sorting and Related Problems”及 Theorem 5.1 给出排序上界,Chapter 6 定位匹配下界。