B堆(英語:B-heap)是一个用来保证子树在一个内存页的二叉堆。这样可以在使用虚拟内存时减少访问很大堆时内存页的访问。传统的实现中,元素位置的映射(几乎)每一级都放在不同的内存页中。

也有其他非常高效实用虚拟内存和缓存的堆的变种,例如缓存忽略算法英语cache-oblivious algorithms、k堆、[1]van Emde Boas树英语Van Emde Boas tree[2]

参见 编辑

参考文献 编辑

  1. ^ Naor, Dalit; Martel, Charles U.; Matloff, Norman S. Performance of Priority Queue Structures in a Virtual Memory Environment. Comput. J. 1991, 34 (5): 428–437. doi:10.1093/comjnl/34.5.428. 
  2. ^ van Emde Boas, P.; Kaas, R.; Zijlstra, E. Design and implementation of an efficient priority queue. Mathematical Systems Theory. 1976, 10: 99–127. doi:10.1007/BF01683268. [失效連結]

外部链接 编辑