A Parallel Priority Queue with Constant Time Operations

Gerth Stølting Brodal, Jesper Larsson Träff, and Christos D. Zaroliagis

In Journal of Parallel and Distributed Computing, Special Issue on Parallel Data Structures, volume 49(1), pages 4-21, 1998.

Abstract

We present a parallel priority queue that supports the following operations in constant time: parallel insertion of a sequence of elements ordered according to key, parallel decrease key for a sequence of elements ordered according to key, deletion of the minimum key element, as well as deletion of an arbitrary element. Our data structure is the first to support multi insertion and multi decrease key in constant time. The priority queue can be implemented on the EREW PRAM, and can perform any sequence of n operations in O(n) time and O(mlog n) work, m being the total number of keys inserted and/or updated. A main application is a parallel implementation of Dijkstra's algorithm for the single-source shortest path problem, which runs in O(n) time and O(mlog n) work on a CREW PRAM on graphs with n vertices and m edges. This is a logarithmic factor improvement in the running time compared with previous approaches.

Copyright notice

Copyright © 1998 by Academic Press.

Online version

jpdc98.pdf (290 Kb)

DOI

10.1006/jpdc.1998.1425

BIBTEX entry

@article{jpdc98,
  author = "Gerth St{\o}lting Brodal and Jesper Larsson Tr{\"a}ff and Christos D. Zaroliagis",
  doi = "10.1006/jpdc.1998.1425",
  issn = "0743-7315",
  journal = "Journal of Parallel and Distributed Computing, Special Issue on Parallel Data Structures",
  number = "1",
  pages = "4-21",
  title = "A Parallel Priority Queue with Constant Time Operations",
  volume = "49",
  year = "1998"
}

Other versions