Papers
Topics
Authors
Recent
Search
2000 character limit reached

A Faster External Memory Priority Queue with DecreaseKeys

Published 20 Jun 2018 in cs.DS and cs.DB | (1806.07598v1)

Abstract: 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(1BlogNB)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(1BlogNB/logMB)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 Ω(1BlogB/loglogN)\Omega(\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(1BlogNB/loglogN)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.

Citations (9)

Summary

No one has generated a summary of this paper yet.

Paper to Video (Beta)

No one has generated a video about this paper yet.

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.