Towards Optimal Multiple Selection

The multiple selection problem asks for the elements of rank r1, r2, ..., rk from a linearly ordered set of n elements. Let B denote the information theoretic lower bound on the number of element comparisons needed for multiple selection. We first show that a variant of multiple quickselect — a well known, simple, and practical generalization of quicksort — solves this problem with $B+\mathcal{O}(n)$ expected comparisons. We then develop a deterministic divide-and-conquer algorithm that solves the problem in $\mathcal{O}(B)$ time and $B+o(B)+\mathcal{O}(n)$ element comparisons.

[1]  J. Ian Munro,et al.  Average case selection , 1984, STOC '84.

[2]  Manuel Blum,et al.  Time Bounds for Selection , 1973, J. Comput. Syst. Sci..

[3]  Arnold Schönhage,et al.  Finding the Median , 1976, J. Comput. Syst. Sci..

[4]  Alois Panholzer Analysis of multiple quickselect variants , 2003, Theor. Comput. Sci..

[5]  C. A. R. Hoare Algorithm 63: partition , 1961, CACM.

[6]  C. A. R. Hoare,et al.  Algorithm 64: Quicksort , 1961, Commun. ACM.

[7]  David P. Dobkin,et al.  Optimal Time Minimal Space Selection Algorithms , 1981, JACM.

[8]  Ira Pohl,et al.  A sorting problem and its complexity , 1972, CACM.

[9]  John M. Chambers,et al.  Algorithm 410: Partial sorting , 1971 .

[10]  Ronald L. Rivest,et al.  Expected time bounds for selection , 1975, Commun. ACM.

[11]  Helmut Prodinger,et al.  Multiple Quickselect - Hoare's Find Algorithm for Several Elements , 1995, Inf. Process. Lett..

[12]  Uri Zwick,et al.  Selecting the median , 1995, SODA '95.

[13]  Rajeev Motwani,et al.  Randomized Algorithms , 1995, SIGA.

[14]  Guy E. Blelloch,et al.  A comparison of sorting algorithms for the connection machine CM-2 , 1991, SPAA '91.

[15]  Selmer M. Johnson,et al.  A Tournament Problem , 1959 .