DOI QR코드

DOI QR Code

IMI-Heap: An Implicit Double-Ended Priority Queue with Constant Insertion Amortized Time Complexity

IMI-힙: 상수 삽입 전이 시간 복잡도를 가진 묵시 양단 우선순위 큐

  • 정해재 (안동대학교 정보통신공학과)
  • Received : 2018.08.13
  • Accepted : 2018.12.18
  • Published : 2019.02.28

Abstract

Priority queues, one of the fundamental data structures, have been studied for a long time by computer scientists. This paper proposes an implicit double-ended priority queue, called IMI-heap, in which insert operation takes constant amortized time and each of removal operation of the minimum key or the maximum key takes O(logn) time. To the author's knowledge, all implicit double-ended priority queues that have been published, perform insert, removeMin and removeMax operations in O(logn) time each. So, the proposed IMI-heap is superior than the published heaps in terms of insertion time complexity.The abstract should concisely state what was done, how it was done, principal results, and their significance.

우선순위 큐은 근본적인 자료 구조 중의 하나이며 오랫동안 많은 연구가 이루어여 왔다. 본 논문에서는 IMI-힙이라고 하는 묵시 양단 우선순위 큐를 제안한다. 제안된 IMI-힙에서는 삽입에 O(1) 전이시간이 걸리고 최소값과 최대값 삭제 연산에 각각 O(logn) 시간이 걸린다. 기존에 발표된 묵시 양단 우선순위 큐는 삽입과 최소/최대값 삭제에 모두 O(logn) 시간이 걸리는 것으로 본 저자는 알고 있다. 따라서 제안된 IMI-힙은 삽입 시간 복잡도에 있어서 기존의 힙보다 우수하다.

Keywords

JBCRIN_2019_v8n2_29_f0001.png 이미지

Fig. 1. An IMI-heap with Two Component Heaps

JBCRIN_2019_v8n2_29_f0002.png 이미지

Fig. 2. Initialization of IMI-heap

JBCRIN_2019_v8n2_29_f0003.png 이미지

Fig. 3. Heapify Algorithm of Right-end

JBCRIN_2019_v8n2_29_f0004.png 이미지

Fig. 4. Insertion Algorithm

JBCRIN_2019_v8n2_29_f0005.png 이미지

Fig. 5. IMI-heap after inserting key 25 into Fig. 1

JBCRIN_2019_v8n2_29_f0006.png 이미지

Fig. 6. Remove Algorithm of Minimum Key

JBCRIN_2019_v8n2_29_f0007.png 이미지

Fig. 7. IMI-heap after Deleting Minimum Key from Fig. 5

References

  1. E. Horowitz, S. Sahni, and D. Mehta, "Fundamentals of Data Structures in C++," San Francisco: W. H. Freeman, 1995.
  2. S. Carlsson, J. Munro, and P. Poblete, "An implicit binomial queue with constant insertion time," in Proceedings of the 1st Scandinavian Workshop on Algorithm Theory, Lecture Notes in Computer Science, Vol.318, pp.1-13, Jul. 1988.
  3. N. Harvey and K. Zatloukal, "The Post-order heap," in Proceedings of the Third International Conference on Fun with Algorithms(FUN), May 2004.
  4. H. Jung, "A Simple Array Version of M-heap," International Journal of Foundations of Computer Science, Vol.25, No.1, pp.67-88, Jun. 2014. https://doi.org/10.1142/S012905411450004X
  5. H. Jung, "The d-deap*: A fast and simple cache-aligned d-ary deap," Information Processing Letters, Vol.93, No.2, pp. 63-67, Jan. 2005. https://doi.org/10.1016/j.ipl.2004.10.001
  6. J. van Leeuwen and D. Wood, "Interval heaps," The Computer Journal, Vol.36, No.3, pp.209-216, 1993. https://doi.org/10.1093/comjnl/36.3.209
  7. Y. Ding and M. Weiss, "On the Complexity of Building an Interval Heap," Information Processing Letters, Vol.50, pp.143-144, 1994. https://doi.org/10.1016/0020-0190(94)00020-4
  8. S. Sahni, Data Structures, Algorithms, & Applications in Java: Double-Ended Priority Queues [Internet], https://www.cise.ufl.edu/-sahni/dsaaj/enrich/c13/double.htm.
  9. S. Bansal, S. Sreekanth, and P. Gupta, "M-heap: A Modified heap data structures," International Journal of Foundations of Computer Science, Vol.14, No.3, pp.491-502, 2003. https://doi.org/10.1142/S0129054103001856
  10. H. Jung, "A double-ended priority queue with O(1) insertion amortized time," KIPS Journal A, Vol.16, No.A(3), pp. 217-222, Jun. 2009.