# Towards a Realistic Analysis of the QuickSelect Algorithm

- 251 Downloads
- 1 Citations

## Abstract

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 \({\Theta } (n \log n)\) in the case of key comparisons, and \({\Theta }(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!*

## Keywords

Probabilistic analysis of algorithms Sorting and searching algorithms Selection problem Pattern matching Permutations Information theory Rice’s method Asymptotic estimates Quickselect## Notes

### Acknowledgments

The authors wish to thank an anonymous reviewer for constructive comments, and also Jérémie Lumbroso and Bruno Salvy for their wise advice concerning the last part of the abstract.

## References

- 1.Cénac, P., Chauvin, B., Paccaut, F., Pouyanne, N.: Uncommon suffix tries. Random Struct. Algoritm. (2013)Google Scholar
- 2.Clément, J., Flajolet, P., Vallée, B.: Dynamical sources in information theory: a general analysis of trie structures. Algorithmica
**29**(1), 307–369 (2001)MathSciNetCrossRefzbMATHGoogle Scholar - 3.Clément, J., Nguyen Thi, T. H., Vallée, B.: A general framework for the realistic analysis of sorting and searching algorithms. Application to some popular algorithms. In: Portier, N., Wilke, T. (eds.) 30th International Symposium on Theoretical Aspects of Computer Science (STACS 2013), volume 20 of Leibniz International Proceedings in Informatics (LIPIcs). Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, pp. 598–609. Dagstuhl, Germany (2013)Google Scholar
- 4.Clément, J., Nguyen Thi, T. H., Vallée, B.: Towards a realistic analysis of some popular sorting algorithms. Special issue of CPC (Combinatorics, Probability and Computing) dedicated to Philippe Flajolet
**24**(01), 104–144 (2014)MathSciNetGoogle Scholar - 5.De Bruijn, N.: Asymptotic methods in analysis, Dover (1981)Google Scholar
- 6.Fill, J., Matterer, J.: QuickSelect tree process convergence, with an application to distributional convergence for the number of symbol comparisons used by worst-case Find. To appear in the special issue of CPC dedicated to Philippe Flajolet (2014)Google Scholar
- 7.Fill, J.A., Nakama, T.: Analysis of the expected number of bit comparisons required by QuickSelect. Algorithmica
**58**(3), 730–769 (2010)MathSciNetCrossRefzbMATHGoogle Scholar - 8.Fill, J.A., Nakama, T.: Distributional convergence for the number of symbol comparisons used by QuickSelect. Adv. Appl. Probab.
**45**, 425–450 (2013)MathSciNetCrossRefzbMATHGoogle Scholar - 9.Flajolet, P., Sedgewick, R.: Mellin transforms and asymptotics: finite differences and Rice’s integrals. Theor. Comput. Sci.
**144**(1&2), 101–124 (1995)MathSciNetCrossRefzbMATHGoogle Scholar - 10.Flajolet, P., Sedgewick, R.: Analytic combinatorics. Cambridge University Press (2009)Google Scholar
- 11.Grabner, P.J., Prodinger, H.: On a constant arising in the analysis of bit comparisons in Quickselect. Quaestiones Mathematicae
**31**(4), 303–306 (2008)MathSciNetCrossRefzbMATHGoogle Scholar - 12.Hoare, C.A.R.: Algorithm 63: partition. Commun. ACM
**4**(7), 321 (1961)CrossRefGoogle Scholar - 13.Hoare, C.A.R.: Algorithm 64: Quicksort. Commun. ACM
**4**(7), 321 (1961)CrossRefGoogle Scholar - 14.Hoare, C.A.R.: Quicksort. Comput. J.
**5**(1), 10–15 (1962)MathSciNetCrossRefzbMATHGoogle Scholar - 15.Knuth, D.E.: Mathematical analysis of algorithms. In: IFIP Congress (1), pp 19–27 (1971)Google Scholar
- 16.Knuth, D.E.: The art of computer programming, vol 3, 2nd edn. Sorting and searching. Addison Wesley Longman Publishing Co., Inc., Redwood City (1998)Google Scholar
- 17.Mosteller, F.: On some useful inefficient statistics. Ann. Math. Statist.
**17**(4), 377–408 (1946)MathSciNetCrossRefzbMATHGoogle Scholar - 18.Nguyen Thi, T. H.: Towards a realistic analysis of sorting and searching algorithms. PhD thesis, Université de Caen Basse Normandie (2014)Google Scholar
- 19.Nörlund, N.E.: Leçons sur les équations linéaires aux différences finies. Collection de monographies sur la théorie des fonctions, p 1929. Gauthier-Villars, ParisGoogle Scholar
- 20.Nörlund, N.E.: Vorlesungen über Differenzenrechnung. Chelsea Publishing Company, New York (1954)Google Scholar
- 21.Sedgewick, R.: Quicksort. Outstanding dissertations in the computer sciences. Garland Publishing, New York (1975)Google Scholar
- 22.Sedgewick, R.: Quicksort. Garland Pub. Co., New York (1980)zbMATHGoogle Scholar
- 23.Sedgewick, R., Flajolet, P.: An introduction to the analysis of algorithms. Addison-Wesley-Longman (1996)Google Scholar
- 24.Seidel, R.: Data-specific analysis of string sorting. In: Proceedings of the twenty-first annual ACM-SIAM symposium on discrete algorithms, SODA, pp. 1278–1286 (2010)Google Scholar
- 25.Vallée, B.: Dynamical sources in information theory: fundamental intervals and word prefixes. Algorithmica
**29**(1/2), 262–306 (2001)MathSciNetCrossRefzbMATHGoogle Scholar - 26.Vallée, B., Clément, J., Fill, J.A., Flajolet, P.: The number of symbol comparisons in QuickSort and QuickSelect. In: Albers, S., et al. (eds.) Proceedings of ICALP 2009, Part I, vol. 5555 of Lecture Notes in Computer Science, pp. 750–763. Springer (2009)Google Scholar
- 27.van Emden, M.H.: Increasing the efficiency of quicksort. Commun. ACM
**13**(9), 563–567 (1970)CrossRefzbMATHGoogle Scholar