arXivDaily arXiv每日学术速递 周一至周五更新
北美退伍军人节(Veterans Day),12 日无更新
arXiv 1806.07598cs.DScs.DB
收藏

一种基于DecreaseKeys的快速外存优先级队列

A Faster External Memory Priority Queue with DecreaseKeys

Shunhua Jiang, Kasper Green Larsen

摘要:

优先级队列是一种基本的数据结构,它维护一组动态的(键,优先级)对,并支持插入、删除、提取最小值和减少键操作。在外部存储器模型中,当前最佳优先级队列支持摊销$O(\frac{1}{B}\log \frac{N}{B})$ I/O中的每个操作。如果不需要支持DecreaseKey操作,则可以设计支持Insert的更有效的数据结构,最近的一个结果表明,通过证明$O(\frac{1}{B}\log \frac{N}{B}/ \log \frac{M}{B})$ I/O的下界,性能下降是不可避免的。具有DecreaseKeys的优先级队列的OS。在本文中,我们提出了一个新的优先级队列,它支持DecreaseKey操作,并具有预期的摊销I/O复杂度为$O(\frac{1}{B}\log \frac{N}{B}/\log\log N)$,从而缩小了下限和上限之间的差距。我们的研究结果在十多年来首次改进了DecreaseKeys的外部存储器优先级队列,并给出了最快的外部存储器单源最短路径算法。

英文摘要:

A priority queue is a fundamental data structure that maintains a dynamic set of (key, priority)-pairs and supports Insert, Delete, ExtractMin and DecreaseKey operations. In the external memory model, the current best priority queue supports each operation in amortized $O(\frac{1}{B}\log \frac{N}{B})$ I/Os. If the DecreaseKey operation does not need to be supported, one can design a more efficient data structure that supports the Insert, Delete and ExtractMin operations in $O(\frac{1}{B}\log \frac{N}{B}/ \log \frac{M}{B})$ I/Os. A recent result shows that a degradation in performance is inevitable by proving a lower bound of $Ω(\frac{1}{B}\log B/\log\log N)$ I/Os for priority queues with DecreaseKeys. In this paper we tighten the gap between the lower bound and the upper bound by proposing a new priority queue which supports the DecreaseKey operation and has an expected amortized I/O complexity of $O(\frac{1}{B}\log \frac{N}{B}/\log\log N)$. Our result improves the external memory priority queue with DecreaseKeys for the first time in over a decade, and also gives the fastest external memory single source shortest path algorithm.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑