English
 
Help Privacy Policy Disclaimer
  Advanced SearchBrowse

Item

ITEM ACTIONSEXPORT

Released

Report

Radix heaps an efficient implementation for priority queues

MPS-Authors
/persons/resource/persons44808

Könemann,  Jochen
Algorithms and Complexity, MPI for Informatics, Max Planck Society;

/persons/resource/persons45433

Schwarz,  Christian
Algorithms and Complexity, MPI for Informatics, Max Planck Society;

External Resource
No external resources are shared
Fulltext (restricted access)
There are currently no full texts shared for your IP range.
Fulltext (public)

MPI-I-95-1-009.pdf
(Any fulltext), 16MB

Supplementary Material (public)
There is no public supplementary material available
Citation

Könemann, J., Schmitz, C., & Schwarz, C.(1995). Radix heaps an efficient implementation for priority queues (MPI-I-1995-1-009). Saarbrücken: Max-Planck-Institut für Informatik.


Cite as: https://hdl.handle.net/11858/00-001M-0000-0014-A759-3
Abstract
We describe the implementation of a data structure called radix heap, which is a priority queue with restricted functionality. Its restrictions are observed by Dijkstra's algorithm, which uses priority queues to solve the single source shortest path problem in graphs with nonnegative edge costs. For a graph with $n$ nodes and $m$ edges and real-valued edge costs, the best known theoretical bound for the algorithm is $O(m+n\log n)$. This bound is attained by using Fibonacci heaps to implement priority queues. If the edge costs are integers in the range $[0\ldots C]$, then using our implementation of radix heaps for Dijkstra's algorithm leads to a running time of $O(m+n\log C)$. We compare our implementation of radix heaps with an existing implementation of Fibonacci heaps in the framework of Dijkstra's algorithm. Our experiments exhibit a tangible advantage for radix heaps over Fibonacci heaps and confirm the positive influence of small edge costs on the running time.