Towards a Realistic Analysis of the QuickSelect Algorithm
We revisit the analysis of the classical QuickSelect algorithm. Usually, the analysis deals with the mean number of key comparisons, but here we view keys as words produced by a source, and words are compared via their symbols in lexicographic order. Our probabilistic models belong to a broad catego...
Gespeichert in:
Veröffentlicht in: | Theory of computing systems 2016-05, Vol.58 (4), p.528-578 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | We revisit the analysis of the classical
QuickSelect
algorithm. Usually, the analysis deals with the mean number of key comparisons, but here we view keys as words produced by a source, and words are compared via their symbols in lexicographic order. Our probabilistic models belong to a broad category of information sources that encompasses memoryless (i.e., independent-symbols) and Markov sources, as well as many unbounded-correlation sources. The “realistic” cost of the algorithm is here the total number of symbol comparisons performed by the algorithm, and, in this context, the average-case analysis aims to provide estimates for the mean number of symbol comparisons. For the
QuickSort
algorithm, known average-case complexity results are of
Θ
(
n
log
n
)
in the case of key comparisons, and
Θ
(
n
log
2
n
)
for symbol comparisons. For
QuickSelect
algorithms, and with respect to key comparisons, the average-case complexity is Θ(
n
). In this present article, we prove that, with respect to symbol comparisons,
QuickSelect
’s average-case complexity remains Θ(
n
). In each case, we provide explicit expressions for the dominant constants, closely related to the probabilistic behaviour of the source.
We began investigating this research topic with Philippe Flajolet, and the short version of the present paper (the ICALP’2009 paper) was written with him. As usual, Philippe played a central role, notably on the following points: introduction of the
QuickVal
algorithm, tameness of sources, and use of Rice’s method. He also made many experiments exhibiting the asymptotic slope ρ
(
α) and plotted nice graphs, which are reproduced in this paper. Even though the extended abstract does not provide any proof of the analysis of the algorithm
QuickQuant
,
Philippe also devised with us a precise plan for this proof which has now completely been written. For all these reasons, we could have added (and certainly would have liked to add) Philippe as a co-author of this paper. On the other hand, Philippe was extremely exacting of how his papers were to be written and organised, and we cannot be sure that he would have liked or validated our editing choices. In the end, this is why we have decided not to include him as a co-author, but instead, to dedicate, with deference and affection, this paper to his memory. Thank you, Philippe! |
---|---|
ISSN: | 1432-4350 1433-0490 |
DOI: | 10.1007/s00224-015-9633-5 |