Advertisement

Are Fibonacci heaps optimal?

  • Diab Abuaiadh
  • Jeffrey H. Kingston
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 834)

Abstract

In this paper we investigate the inherent complexity of the priority queue abstract data type. We show that, under reasonable assumptions, there exist sequences of n Insert, n Delete, m DecreaseKey and t FindMin operations, where 1 ≤ tn, which have Ω(nlogt + n + m) complexity. Although Fibonacci heaps do not achieve this bound, we present a modified Fibonacci heap which does, and so is optimal under our assumptions. Using our modified Fibonacci heap we are able to obtain an efficient algorithm for the shortest path problem.

Keywords

Time Complexity Priority Queue Short Path Problem Special Node Decision Tree Model 
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.
    Aho, A. V., J. E. Hopcroft, and J. D. Ullman, The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974.Google Scholar
  2. 2.
    Brown, M.R., Implementation and analysis of binomial queue algorithms. SIAM J.Comput. 7, 298–319 (1978).CrossRefGoogle Scholar
  3. 3.
    Dijkstra, E. W., A note on two problems in connexion with graphs. Numerische Mathematik 1, 269–271 (1959).CrossRefGoogle Scholar
  4. 4.
    Fredman, M. L., Sedgewick, R., Sleator, D. D., and Tarjan, R. E., The pairing heap: A new form of Self-Adjusting heap. Algorithmica 1, 111–129 (1986).Google Scholar
  5. 5.
    Fredman, M. L. and R. E. Tarjan, Fibonacci heaps and their uses in improved network optimization algorithms. Journal of the ACM 34, 569–615 (1987).Google Scholar
  6. 6.
    Johnson, D. B., Efficient algorithms for shortest paths in sparse networks. Journal of the ACM 24, 1–13 (1977).Google Scholar
  7. 7.
    Kingston, J. H., Algorithms and Data Structures: Design, Correctness, Analysis. Addison-Wesley, 1990.Google Scholar
  8. 8.
    Knuth, D. E., The Art of Computer Programming Volume 1: sorting and searching. Addison-Wesley, 1968.Google Scholar
  9. 9.
    Peterson, G. L., A balanced tree scheme for meldable heaps with updates. Tech. Rep. GIT-ICS-87-23 (1987), School of Information and Computer Science, Georgia Institute of Technology, Atlanta, GA 30332.Google Scholar
  10. 10.
    Tarjan, R. E., Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, 1983.Google Scholar
  11. 11.
    Tarjan, R.E., Amortized computational complexity. SIAM Journal on Algebraic and Discrete Methods 6, 306–318 (1985).Google Scholar
  12. 12.
    Vuillemin, J., A data structure for manipulating priority queues. Comm. ACM 21, 309–314 (1978).CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Diab Abuaiadh
    • 1
  • Jeffrey H. Kingston
    • 1
  1. 1.Basser Department of Computer ScienceThe University of SydneyAustralia

Personalised recommendations