Merging and sorting strings in parallel
Two sorted lists of strings, containing altogether n characters, can be merged with an optimal time-processor product of O(n) in O(log n) time on a CRCW PRAM, and in O((log n)2) time on an EREW PRAM.
Suppose that n integers of size polynomial in n can be sorted in time O(t(n)) with a time-processor product of O(nf(n)) on a CRCW PRAM, a CREW PRAM or an EREW PRAM, for nondecreasing functions t, f: ℕ → ℕ. Then a list of strings, containing altogether n characters drawn from an alphabet of size polynomial in n, can be sorted in time O(t(n) log n) with a time-processor product of O(n f(n) + n log log n) on a PRAM of the same type. In particular, such a list can be sorted in O((log n) 2/log log n) time with a time-processor product of O(n log log n) on a CRCW PRAM.
KeywordsBinary Search Input String Character Position Radix Sorting EREW Pram
Unable to display preview. Download preview PDF.
- K. E. Batcher, Sorting networks and their applications, in Proc. AFIPS Spring Joint Computer Conference, Vol. 32 (1968), pp. 307–314.Google Scholar
- S. R. Kosaraju, On a multidimensional search problem, in Proc. 11th Annual ACM Symposium on Theory of Computing (1979), pp. 67–73.Google Scholar
- R. Vaidyanathan, C. R. P. Hartmann, and P. K. Varshney, Optimal parallel lexicographic sorting using a fine-grained decomposition. Tech. Report SU-CIS-91-01, School of Computer and Information Science, Syracuse University, Syracuse, NY, 1991.Google Scholar