QuickXsort: A Fast Sorting Scheme in Theory and Practice

Stefan Edelkamp, Armin Weiß, Sebastian Wild

Research output: Contribution to journalArticlepeer-review

9 Citations (Scopus)
196 Downloads (Pure)

Abstract

QuickXsort is a highly efficient in-place sequential sorting scheme that mixes Hoare’sQuicksortalgorithm with X, where X can be chosen from a wider range of other known sorting algorithms, like Heapsort, Insertionsort and Mergesort. Its major advantage is thatQuickXsortc an be in-place even if X is not. In this work we provide general transfer theorems expressing the number of comparisons of QuickXsor tin terms of the number of comparisons of X. More specifically, if pivots are chosen as medians of (not too fast) growing size samples, the average number of comparisons of QuickXsortand X differ only by o(n)-terms. For median-of-k pivot selection for some constant k, the difference is a linear term whose coefficient we compute precisely. For instance, median-of-three QuickMergesort uses at most n lg n−0.8358n+O(log n) comparisons. Furthermore, we examine the possibility of sorting base cases with some other algorithm using even less comparisons. By doing so the average-case number of comparisons can be reduced down ton lg n−1.4112n+o(n)for a remaining gap of only 0.0315n comparisons to the known lower bound (while using only O(log n) additional space and O(n log n) time over-all). Implementations of these sorting strategies show that the algorithms challenge well-established library implementations like Musser’s Introsort.
Original languageEnglish
Pages (from-to)509-588
Number of pages80
JournalALGORITHMICA
Volume82
Issue number3
Early online date22 Oct 2019
DOIs
Publication statusPublished - 1 Mar 2020

Keywords

  • Average-case analysis
  • Continuous master theorem
  • Heapsort
  • MergeInsertion
  • Mergesort
  • QuickHeapsort
  • QuickMergesort
  • Quicksort
  • Recurrence
  • Sorting
  • Variance

Fingerprint

Dive into the research topics of 'QuickXsort: A Fast Sorting Scheme in Theory and Practice'. Together they form a unique fingerprint.

Cite this