Cargando…
The analysis of Range Quickselect and related problems()
Range Quickselect, a simple modification of the well-known Quickselect algorithm for selection, can be used to efficiently find an element with rank [Formula: see text] in a given range [Formula: see text] , out of [Formula: see text] given elements. We study basic cost measures of Range Quickselect...
Autores principales: | , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
North-Holland Pub. Co
2011
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3204921/ https://www.ncbi.nlm.nih.gov/pubmed/22163377 http://dx.doi.org/10.1016/j.tcs.2011.06.030 |
Sumario: | Range Quickselect, a simple modification of the well-known Quickselect algorithm for selection, can be used to efficiently find an element with rank [Formula: see text] in a given range [Formula: see text] , out of [Formula: see text] given elements. We study basic cost measures of Range Quickselect by computing exact and asymptotic results for the expected number of passes, comparisons and data moves during the execution of this algorithm. The key element appearing in the analysis of Range Quickselect is a trivariate recurrence that we solve in full generality. The general solution of the recurrence proves to be very useful, as it allows us to tackle several related problems, besides the analysis that originally motivated us. In particular, we have been able to carry out a precise analysis of the expected number of moves of the [Formula: see text] th element when selecting the [Formula: see text] th smallest element with standard Quickselect, where we are able to give both exact and asymptotic results. Moreover, we can apply our general results to obtain exact and asymptotic results for several parameters in binary search trees, namely the expected number of common ancestors of the nodes with rank [Formula: see text] and [Formula: see text] , the expected size of the subtree rooted at the least common ancestor of the nodes with rank [Formula: see text] and [Formula: see text] , and the expected distance between the nodes of ranks [Formula: see text] and [Formula: see text]. |
---|