Merging heaps in parallel

Recently, Sack and Strothotte [8] proposed an efficient algorithm to merge two heaps. We propose to show that the algorithm in Sack and Strothotte [8] can be easily parallelized. More specifically, with heaps H and H′ with n and k elements, respectively, as input, our algorithm constructs a new heap containing all the keys in H and H′ combined in O(log n) time using at most min {[log n] − [log k], [log k]} + 1 processors in the EREW-PRAM model.

[1]  Thomas Strothotte,et al.  An Algorithm for Merging Heaps , 1985, Acta Informatica.

[2]  Jukka Teuhola,et al.  Priority Queue Administration by Sublist Index , 1979, Comput. J..

[3]  Bruce A. Reed,et al.  Building Heaps Fast , 1989, J. Algorithms.

[4]  Svante Carlsson,et al.  The Deap-A Double-Ended Heap to Implement Double-Ended Priority Queues , 1987, Inf. Process. Lett..

[5]  Kai Hwang,et al.  Computer architecture and parallel processing , 1984, McGraw-Hill Series in computer organization and architecture.

[6]  Gaston H. Gonnet,et al.  Heaps on Heaps , 1982, SIAM J. Comput..