The average case analysis of partition sorts

Richard Cole, David C. Kandathil

Research output: Contribution to journalArticle

Abstract

This paper introduces a new family of in-place sorting algorithms, the partition sorts. They are appealing both for their relative simplicity and their efficient performance. They perform ⊖(n log n) operations on the average, and G(n log2n) operations in the worst case. The partition sorts are related to another family of sorting algorithms discovered recently by Chen [Che02]. He showed empirically that one version ran faster, on the average, than quicksort, and that the algorithm family performed ⊖(n log n) comparisons in the worst case; however no average case analysis was obtained. This paper completes the analysis of Chen's algorithm family. In particular, a bound of n log n + ⊖(n) comparisons and ⊖(n log n) operations is shown for the average case, and ⊖(n log2n) operations for the worst case. The average case analysis is somewhat unusual. It proceeds by showing that Chen's sorts perform, on the average, no more comparisons than the partition sorts. Optimised versions of the partition sort and Chen's algorithm are very similar in performance, and both run marginally faster than an optimised quasi-best-of-nine variant of quicksort [BM93]. They both have a markedly smaller variance than the quicksorts.

Original languageEnglish (US)
Pages (from-to)240-251
Number of pages12
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume3221
StatePublished - 2004

Fingerprint

Average-case Analysis
Sort
Quicksort
Partition
Sorting algorithm
Sorting
Simplicity
Family

ASJC Scopus subject areas

  • Computer Science(all)
  • Biochemistry, Genetics and Molecular Biology(all)
  • Theoretical Computer Science

Cite this

@article{4b3c288751c0479188ddd115016cb2f9,
title = "The average case analysis of partition sorts",
abstract = "This paper introduces a new family of in-place sorting algorithms, the partition sorts. They are appealing both for their relative simplicity and their efficient performance. They perform ⊖(n log n) operations on the average, and G(n log2n) operations in the worst case. The partition sorts are related to another family of sorting algorithms discovered recently by Chen [Che02]. He showed empirically that one version ran faster, on the average, than quicksort, and that the algorithm family performed ⊖(n log n) comparisons in the worst case; however no average case analysis was obtained. This paper completes the analysis of Chen's algorithm family. In particular, a bound of n log n + ⊖(n) comparisons and ⊖(n log n) operations is shown for the average case, and ⊖(n log2n) operations for the worst case. The average case analysis is somewhat unusual. It proceeds by showing that Chen's sorts perform, on the average, no more comparisons than the partition sorts. Optimised versions of the partition sort and Chen's algorithm are very similar in performance, and both run marginally faster than an optimised quasi-best-of-nine variant of quicksort [BM93]. They both have a markedly smaller variance than the quicksorts.",
author = "Richard Cole and Kandathil, {David C.}",
year = "2004",
language = "English (US)",
volume = "3221",
pages = "240--251",
journal = "Lecture Notes in Computer Science",
issn = "0302-9743",
publisher = "Springer Verlag",

}

TY - JOUR

T1 - The average case analysis of partition sorts

AU - Cole, Richard

AU - Kandathil, David C.

PY - 2004

Y1 - 2004

N2 - This paper introduces a new family of in-place sorting algorithms, the partition sorts. They are appealing both for their relative simplicity and their efficient performance. They perform ⊖(n log n) operations on the average, and G(n log2n) operations in the worst case. The partition sorts are related to another family of sorting algorithms discovered recently by Chen [Che02]. He showed empirically that one version ran faster, on the average, than quicksort, and that the algorithm family performed ⊖(n log n) comparisons in the worst case; however no average case analysis was obtained. This paper completes the analysis of Chen's algorithm family. In particular, a bound of n log n + ⊖(n) comparisons and ⊖(n log n) operations is shown for the average case, and ⊖(n log2n) operations for the worst case. The average case analysis is somewhat unusual. It proceeds by showing that Chen's sorts perform, on the average, no more comparisons than the partition sorts. Optimised versions of the partition sort and Chen's algorithm are very similar in performance, and both run marginally faster than an optimised quasi-best-of-nine variant of quicksort [BM93]. They both have a markedly smaller variance than the quicksorts.

AB - This paper introduces a new family of in-place sorting algorithms, the partition sorts. They are appealing both for their relative simplicity and their efficient performance. They perform ⊖(n log n) operations on the average, and G(n log2n) operations in the worst case. The partition sorts are related to another family of sorting algorithms discovered recently by Chen [Che02]. He showed empirically that one version ran faster, on the average, than quicksort, and that the algorithm family performed ⊖(n log n) comparisons in the worst case; however no average case analysis was obtained. This paper completes the analysis of Chen's algorithm family. In particular, a bound of n log n + ⊖(n) comparisons and ⊖(n log n) operations is shown for the average case, and ⊖(n log2n) operations for the worst case. The average case analysis is somewhat unusual. It proceeds by showing that Chen's sorts perform, on the average, no more comparisons than the partition sorts. Optimised versions of the partition sort and Chen's algorithm are very similar in performance, and both run marginally faster than an optimised quasi-best-of-nine variant of quicksort [BM93]. They both have a markedly smaller variance than the quicksorts.

UR - http://www.scopus.com/inward/record.url?scp=35048829760&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=35048829760&partnerID=8YFLogxK

M3 - Article

VL - 3221

SP - 240

EP - 251

JO - Lecture Notes in Computer Science

JF - Lecture Notes in Computer Science

SN - 0302-9743

ER -