Optimal Distributed Algorithms for Sorting and Ranking
Author(s)
Zaks, Shmuel
DownloadMIT-LCS-TM-261.pdf (4.638Mb)
Metadata
Show full item recordAbstract
We study the problems of sorting and ranking n processors that have initial values - not necessarily distinct - in a distrubuted system. Sorting means that the initial values have to move around in the network and be assigned to the processors according to their distinct identities, while ranking means that the numbers 1,2,...,n have to be assigned to the processors according to their initial values; ties between initial values can be broken in any chosen way. Assuming a tree network, and assuming that a message can contain an initial value, an identity or a rank, we present an algorithm for the ranking problem that uses, in the worst case, at most 1/2n^2 + O(n) such messages. The algorithm is them extended to perform sorting, using in the worst case at most 3/4n^2 + O(n) messages. Both algorithms are using a total of O(n) space. The algorithms are extended to general networks. The expected behavior of these algorithms for three classes of trees are discussed. Assuming that the initial values, identities and ranks can only be compared within themselves, lower bounds of 1/2n^2 and 3/4n^2 messages are proved for a worst case execution of any algorithm to solve the ranking and sorting problems, correspondingly.
Date issued
1984-05Series/Report no.
MIT-LCS-TM-261