Smoothed Analysis of Binary Search Trees and Quicksort under Additive Noise

  • Bodo Manthey
  • Till Tantau
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5162)

Abstract

Binary search trees are a fundamental data structure and their height plays a key role in the analysis of divide-and-conquer algorithms like quicksort. We analyze their smoothed height under additive uniform noise: An adversary chooses a sequence of n real numbers in the range [0,1], each number is individually perturbed by adding a value drawn uniformly at random from an interval of size d, and the resulting numbers are inserted into a search tree. An analysis of the smoothed tree height subject to n and d lies at the heart of our paper: We prove that the smoothed height of binary search trees is \(\Theta (\sqrt{n/d} + \log n)\), where d ≥ 1/n may depend on n. Our analysis starts with the simpler problem of determining the smoothed number of left-to-right maxima in a sequence. We establish matching bounds, namely once more \(\Theta (\sqrt{n/d} + \log n)\). We also apply our findings to the performance of the quicksort algorithm and prove that the smoothed number of comparisons made by quicksort is \(\Theta(\frac{n}{d+1} \sqrt{n/d} + n \log n)\).

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Mehlhorn, K., Banderier, C., Beier, R.: Smoothed Analysis of Three Combinatorial Problems. In: Rovan, B., Vojtáš, P. (eds.) MFCS 2003. LNCS, vol. 2747, pp. 198–207. Springer, Heidelberg (2003)Google Scholar
  2. 2.
    Basch, J., Guibas, L.J., Hershberger, J.: Data structures for mobile data. J. Algorithms 31(1), 1–28 (1999)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Damerow, V.: Average and Smoothed Complexity of Geometric Structures. PhD thesis, Universität Paderborn (2006)Google Scholar
  4. 4.
    Damerow, V., auf der Heide, F.M., Räcke, H., Scheideler, C., Sohler, C.: Smoothed motion complexity. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 161–171. Springer, Heidelberg (2003)Google Scholar
  5. 5.
    Damerow, V., Sohler, C.: Extreme Points Under Random Noise. In: Albers, S., Radzik, T. (eds.) ESA 2004. LNCS, vol. 3221, pp. 264–274. Springer, Heidelberg (2004)Google Scholar
  6. 6.
    Drmota, M.: An analytic approach to the height of binary search trees II. J.ACM 50(3), 333–374 (2003)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Drmota, M.: Profile and height of random binary search trees. J. Iranian Statistical Society 3(2), 117–138 (2004)Google Scholar
  8. 8.
    Fill, J.A., Janson, S.: Quicksort asymptotics. J. Algorithms 44(1), 4–28 (2002)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Knuth, D.E.: Sorting and Searching, 2nd edn. The Art of Computer Programming, vol. 3. Addison-Wesley, Reading (1998)Google Scholar
  10. 10.
    Manthey, B., Reischuk, R.: Smoothed analysis of binary search trees. Theoret. Comput. Sci. 378(3), 292–315 (2007)MATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Manthey, B., Tantau, T.: Smoothed analysis of binary search trees and quicksort under additive noise. Report 07-039, Electronic Colloquium on Computational Complexity (ECCC) (2007)Google Scholar
  12. 12.
    Reed, B.: The height of a random binary search tree. J.ACM 50(3), 306–332 (2003)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Sedgewick, R.: The analysis of quicksort programs. Acta Inform. 7(4), 327–355 (1977)MATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Spielman, D.A., Teng, S.-H.: Smoothed analysis of algorithms: Why the simplex algorithm usually takes polynomial time. J.ACM 51(3), 385–463 (2004)CrossRefMathSciNetGoogle Scholar
  15. 15.
    Spielman, D.A., Teng, S.-H.: Smoothed analysis of algorithms and heuristics: Progress and open questions. In: Foundations of Computational Mathematics, Santander 2005, pp. 274–342. Cambridge University Press, Cambridge (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Bodo Manthey
    • 1
  • Till Tantau
    • 2
  1. 1.Computer ScienceSaarland UniversitySaarbrückenGermany
  2. 2.Institut für Theoretische InformatikUniversität zu LübeckLübeckGermany

Personalised recommendations