Efficient Parallel Binary Search on Sorted Arrays

Let A be an array of n numbers and B an array of m numbers, where A and B are sorted and n < m. We consider the problem of determining for each element AU), 1 ::; j ~ n, the element B(i) such that BCi) ::; A(j) < BCi + I), where 0 S i :S m (with B(O) = -00 and B(m + 1) = +00). Efficient parallel algorithms on the EREW-PRAM for this problem have been given [I, 8]. In this paper, we present a parallel algorithm to solve it in O(logm) time using O((nlog(mjn»Jlogm) EREW-PRAM processors. OUf solution improves the previous known results either on the time or on the total work complexity, and it can be used to obtain a different parallel algorithm fOf merging two sorted arrays of size m each in O(logm) time using Oem/ lagm) EREW-PRAM processors.

[1]  Richard P. Brent,et al.  The Parallel Evaluation of General Arithmetic Expressions , 1974, JACM.

[2]  Selim G. Akl,et al.  Parallel Binary Search , 1990, IEEE Trans. Parallel Distributed Syst..

[3]  Alexandru Nicolau,et al.  Adaptive Bitonic Sorting: An Optimal Parallel Algorithm for Shared-Memory Machines , 1989, SIAM J. Comput..

[4]  Torben Hagerup,et al.  Optimal Merging and Sorting on the Erew Pram , 1989, Inf. Process. Lett..

[5]  Larry Rudolph,et al.  The power of parallel prefix , 1985, IEEE Transactions on Computers.

[6]  Selim G. Akl,et al.  Parallel Binary Search with Delayed Read Conflicts , 1990, Int. J. High Speed Comput..

[7]  Uzi Vishkin,et al.  Parallel Dictionaries in 2-3 Trees , 1983, ICALP.