Advertisement

Priority queues: Small, monotone and trans-dichotomous

  • Rajeev Raman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1136)

Abstract

We consider two data-structuring problems which involve performing priority queue (pq) operations on a set of integers in the range 0..2w−1 on a unit-cost RAM with word size ω bits.

A monotone min-PQ has the property that the minimum value stored in the pq is a non-decreasing function of time. We give a monotone min-pq that, starting with an empty set, processes a sequence of n insert and delete-mins and m decrease-keys in O(m+n√log n log log n) time. As a consequence, the single-source shortest paths problem on graphs with n nodes and m edges and integeredge costs in the range 0..2w − 1 can be solved in O(m+n√log n log log n) time, and n integers each in the range 0..2w−1 can be sorted in O(n√log n log log n) time. All the above results require linear space and assume that any unit-time RAM instructions used belong to the the class ac0.

A small (generalized) PQ supports insert, delete and search operations (the latter returning the predecessor of its argument among the keys in the pq), but allows only w O (1) keys to be present in the pq at any time. We give a small pq which supports all operations in constant expected time. As a consequence, we get that insert, delete and search operations on a set of n keys can be performed in O(1+log n/log ω) expected time. Derandomizing this small pq gives a linear-space static deterministic small pq.

Keywords

Linear Space Hash Function Internal Node Priority Queue External Node 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    R. K. Ahuja, K. Mehlhorn, J. B. Orlin and R. E. Tarjan. Faster algorithms for the shortest path problem. J. ACM, 37 (1990), pp. 213–223.Google Scholar
  2. 2.
    M. Ajtai, M. Fredman and J. Komlós. Hash functions for priority queues. Inform. and Control, 63 (1984), pp. 217–225.Google Scholar
  3. 3.
    A. Andersson. Sublogarithmic searching without multiplications. In Proc. 36th IEEE FOCS, 1995.Google Scholar
  4. 4.
    A. Andersson. Faster sorting and searching in linear space. To be presented at 37th IEEE FOCS, 1996.Google Scholar
  5. 5.
    A. Andersson, T. Hagerup, S. Nilsson and R. Raman. Sorting in linear time? In Proc. 27th ACM STOC, pp. 427–436, 1995.Google Scholar
  6. 6.
    M. Dietzfelbinger. Universal hashing and k-wise independent random variables via integer arithmetic without primes. To be presented at STACS '96.Google Scholar
  7. 7.
    M. Dietzfelbinger, T. Hagerup, J. Katajainen, and M. Penttonen. A reliable randomized algorithm for the closest-pair problem. Tech. Rep. no. 513, Fachbereich Informatik, Universität Dortmund, 1993.Google Scholar
  8. 8.
    P. van Emde Boas, R. Kaas, and E. Ziljstra. Design and implementation of an efficient priority queue. Math. Sys. Theory, 10 (1977), pp. 99–127.Google Scholar
  9. 9.
    M. Fredman, J. Komlós, and E. Szemerédi. Storing a sparse table with O(1) worst case access time. J. ACM, 31 (1984), pp. 538–544.CrossRefGoogle Scholar
  10. 10.
    M. L. Fredman and R. E. Tarjan. Fibonacci heaps and their uses in improved network optimization problems. J. ACM, 34 (1987), pp. 596–615.CrossRefGoogle Scholar
  11. 11.
    M. L. Fredman and D. E. Willard. Surpassing the information theoretic bound with fusion trees. J. Comput. System Sci., 47 (1993), pp. 424–436.Google Scholar
  12. 12.
    M. L. Fredman and D. E. Willard. Trans-dichotomous algorithms for minimum spanning trees and shortest paths. J. Comput. System Sci., 48 (1994), pp. 533–551.Google Scholar
  13. 13.
    J. L. Hennessy and D. A. Patterson. Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann Publ., San Mateo, CA, 1994.Google Scholar
  14. 14.
    F. T. Leighton. Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann Publ., San Mateo, CA, 1992.Google Scholar
  15. 15.
    K. Mehlhorn. Data Structures and Algorithms, Vol. I: Sorting and Searching. Springer-Verlag, Berlin, 1984.Google Scholar
  16. 16.
    R. Motwani and P. Raghavan. Randomized Algorithms, Cambridge University Press, Cambridge, 1996.Google Scholar
  17. 17.
    W. J. Paul and J. Simon. Decision trees and random access machines. In Proc. International Symp. on Logic and Algorithmic, Zürich, pp. 331–340, 1980.Google Scholar
  18. 18.
    R. Raman. Improved data structures for predecessor queries in integer sets. TR 96-07, King's College London, 1995 (revised 1996). ftp://ftp.des.kcl.ac.uk/pub/tech-reports.Google Scholar
  19. 19.
    R. Raman. Fast Algorithms for Shortest Paths and Sorting TR 96-06, King's College London, 1996. ftp://ftp.dcs.kcl.ac.uk/pub/tech-reports.Google Scholar
  20. 20.
    M. Thorup. On RAM Priority Queues. In Proc. 7th ACM-SIAM SODA, pp. 59–67, 1996.Google Scholar
  21. 21.
    D. E. Willard. Log-logarithmic worst case range queries are possible in space O(N). IPL, 17 (1983), pp. 81–89.Google Scholar
  22. 22.
    Andrew C. Yao. Should tables be sorted? J. ACM, 28 (1981), pp. 615–628.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Rajeev Raman
    • 1
  1. 1.Algorithm Design Group, Department of Computer ScienceKing's College LondonLondonUK

Personalised recommendations