DOI QR코드

DOI QR Code

Implicit D-Ary AM-Heap

묵시 다원 AM-힙

  • 정해재 (안동대학교 정보통신공학과)
  • Received : 2018.05.08
  • Accepted : 2018.09.27
  • Published : 2018.12.31

Abstract

This paper proposes an implicit d-ary priority queue, called AM(d)-heap that is a generalized version of AM-heap, in which insert operation takes constant amortized time and remove operation takes O(logn) time. According to our experimental results, the best performance was shown when d is 4 or 8. Also, AM(d)-heap is about 1.5~1.8 times faster than the postorder heap.

본 논문에서는 AM-힙의 다원 버전인 AM(d)-힙이라고 하는 묵시 다원 우선순위 큐를 제안하며, 제안된 AM(d)-힙에서는 삽입에 O(1) 전이시간이 걸리고 삭제 연산에 O(logn) 시간이 걸린다. 실험 결과에 따르면, 전체적으로 d가 4 또는 8일 때 가장 우수한 성능을 나타내었다. 기존의 후위힙과 비교하면 AM(d)-힙이 약 1.5~1.8배 빠른 것으로 나타났다.

Keywords

JBCRIN_2018_v7n12_289_f0001.png 이미지

Fig. 1. AM(4)-heap

JBCRIN_2018_v7n12_289_f0002.png 이미지

Fig. 2. Initialization of AM(d)-heap

JBCRIN_2018_v7n12_289_f0003.png 이미지

Fig. 3. Heapify operation of AM(d)-heap

JBCRIN_2018_v7n12_289_f0004.png 이미지

Fig. 4. Insertion of AM(d)-heap

JBCRIN_2018_v7n12_289_f0005.png 이미지

Fig. 5. AM(4)-heap after Insertions of 55 and 45 into Fig. 1 in Sequence

JBCRIN_2018_v7n12_289_f0006.png 이미지

Fig. 6. Remove Algorithm of AM(d)-heap

JBCRIN_2018_v7n12_289_f0007.png 이미지

Fig. 7. AM(4)-heap after Removemin from Fig. 5

JBCRIN_2018_v7n12_289_f0008.png 이미지

Fig. 8. Experimental Results (PO: Post-order Heap)

References

  1. M. Fredman and R. Tarjan, "Fibonacci heaps and their uses in improved network optimization algorithms," Journal of the ACM, Vol.34, No.3, pp.596-615, 1987. https://doi.org/10.1145/28869.28874
  2. M. Fredman, R. Sedgewick, R. Sleator, and R. Tarjan, "The pairing heap: A new form of self-adjusting heap," Algorithmica, Vol.1, pp.111-129, Mar. 1986. https://doi.org/10.1007/BF01840439
  3. T. J. Stasko and J. S. Vitter, "Pairing heaps: experiments and analysis," Communications of the ACM, Vol.30, No.3, pp.234-249, 1987. https://doi.org/10.1145/214748.214759
  4. S. Bansal, S. Sreekanth, and P. Gupta, "M-heap: A Modified heap data structure," International Journal of Foundations of Computer Science, Vol.14, No.3, pp.491-502, 2003. https://doi.org/10.1142/S0129054103001856
  5. J. Williams, "Algorithm 232 Heapsort," Communications of the ACM, Vol.7, No.1, pp.347-348, 1964.
  6. E. Horowitz, S. Sahni, and D. Mehta, Fundamentals of Data Structures in C++, W. H. Freeman, San Francisco, 1995.
  7. S. Carlsson, J. Munro, and P. Poblete, "An implicit binomial queue with constant insertion time," Proceedings of the 1st Scandinavian Workshop on Algorithm Theory, Lecture Notes in Computer Science, Vol.318, pp.1-13, Jul. 1988.
  8. N. Harvey and K. Zatloukal, "The Post-order heap," in Proceedings of the Third International Conference on Fun with Algorithms (FUN), May 2004.
  9. 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
  10. H. Jung, "Insertion/Deletion Algorithms on M-heap with an array representation," The KIPS Transations: Part A, Vol.13, No.A(3), pp.261-266, Jun. 2006 (written in Korean).
  11. H. Jung, "A Performance Evaluation of Priority Queue Algorithms," The Journal of Korean Institute of Information Technology, Vol.8, No.6, pp.97-103, Jun. 2010.
  12. D. Jones, "An empirical comparison of priority-queue and event-set implementation," Communications of the Association for Computing Machinery, Vol.29, No.4, pp.300-311, 1986. https://doi.org/10.1145/5684.5686