Abstract
Heaps are well-studied fundamental data structures, having myriads of applications, both theoretical and practical. We consider the problem of designing a heap with an “optimal” extract-min operation. Assuming an arbitrary linear ordering of keys, a heap with n elements typically takes \(O(\log n)\) time to extract the minimum. Extracting all elements faster is impossible as this would violate the \({\Omega }(n \log n)\) bound for comparison-based sorting. It is known, however, that is takes only \(O(n + k \log k)\) time to sort just k smallest elements out of n given, which prompts that there might be a faster heap, whose extract-min performance depends on the number of elements extracted so far. In this paper we show that this is indeed the case. We present a version of heap that performs insert in \(O(1)\) time and takes only \(O(\log ^{*} n + \log k)\) time to carry out the k-th extraction (where \(\log ^{*}\) denotes the iterated logarithm). All the above bounds are worst-case.

Similar content being viewed by others
References
Blum, M., Floyd, R.W., Pratt, V., Rivest, R.L., Tarjan, R.E.: Time bounds for selection. J. Comput. Syst Sci. 7(4), 448–461 (1973)
Babenko, M.A., Kolesnichenko, I.I., Smirnov, I: Cascade heap: Towards time-optimal extractions. In: Computer Science - Theory and Applications - 12th International Computer Science Symposium in Russia, CSR 2017, Kazan, Russia, June 8-12, 2017, Proceedings, pp. 62–70 (2017)
Brodal, G.S.: Worst-case efficient priority queues. In: Proceedings of the Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ’96, pp. 52–58. Society for Industrial and Applied Mathematics, Philadelphia (1996)
Cormen, T.H., Leiserson, C.E., Rivest, R. L., Stein, C.: Introduction to Algorithms, 3rd edn. The MIT Press (2009)
Fredman, M.L., Tarjan, R.E.: Fibonacci heaps and their uses in improved network optimization algorithms. J. ACM 34(3), 596–615 (1987)
Navarro, G., Paredes, R.: On sorting, heaps, and minimum spanning trees. Algorithmica 57(4), 585–620 (2010)
Thorup, M.: On ram priority queues. SIAM J. Comput. 30(1), 86–109 (2000)
van Emde Boas, P.: Preserving order in a forest in less than logarithmic time. In: Proceedings of the 16th Annual Symposium on Foundations of Computer Science, SFCS ’75, pp. 75–84. IEEE Computer Society, Washington, DC (1975)
Williams, J.W.J.: Heapsort. Commun. ACM 7, 347–348 (1964)
Author information
Authors and Affiliations
Corresponding author
Additional information
This article is part of the Topical Collection on Computer Science Symposium in Russia
Rights and permissions
About this article
Cite this article
Babenko, M., Kolesnichenko, I. & Smirnov, I. Cascade Heap: Towards Time-Optimal Extractions. Theory Comput Syst 63, 637–646 (2019). https://doi.org/10.1007/s00224-018-9866-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-018-9866-1