## 摘要

Multiselection is the problem of selecting multiple elements at specified ranks from a set of arbitrary elements. In this paper, we first present an efficient algorithm for single-element selection that runs in O(√p + (n/p) logp log(kp/n)) time for selecting the kth smallest element from n elements on a √p × √p mesh-connected computer of p ≤ n processors, where the first component is for communication and second is for computation (data comparisons). Our algorithm is more computationally efficient than the existing result when p ≥ n^{1/2+ε} for any 0 < ε < 1/2. Combining our result for p = Ω(√n) with the existing result for p = O(√n) yields an improved computation time complexity for the selection problem on mesh t_{comp}^{sel} = O(min{(n/p)logp log(kp/n), (n/p + p)log(n/p)}). Using this algorithm as a building block, we then present two efficient parallel algorithms for multiselection on the mesh-connected computers. For selecting r elements from a set of n elements on a √p × √p mesh, p, r ≤ n, our first algorithm runs in time O(p^{1/2} + t_{comp}^{sel} min{r log r, log p}) with processors operating in the SIMD mode, which is time-optimal when p ≤ r. Allowing processors to operate in the MIMD mode, our second algorithm runs in O(p^{1/2} + t_{comp}^{sel} log r) time and is time-optimal for any r and p.

原文 | English |
---|---|

頁（從 - 到） | 165-179 |

頁數 | 15 |

期刊 | International Journal of Computer Mathematics |

卷 | 80 |

發行號 | 2 |

DOIs | |

出版狀態 | Published - 2月 2003 |

對外發佈 | 是 |