English

Improved Average Complexity for Comparison-Based Sorting

Data Structures and Algorithms 2017-05-03 v1

Abstract

This paper studies the average complexity on the number of comparisons for sorting algorithms. Its information-theoretic lower bound is nlgn1.4427n+O(logn)n \lg n - 1.4427n + O(\log n). For many efficient algorithms, the first nlgnn\lg n term is easy to achieve and our focus is on the (negative) constant factor of the linear term. The current best value is 1.3999-1.3999 for the MergeInsertion sort. Our new value is 1.4106-1.4106, narrowing the gap by some 25%25\%. An important building block of our algorithm is "two-element insertion," which inserts two numbers AA and BB, A<BA<B, into a sorted sequence TT. This insertion algorithm is still sufficiently simple for rigorous mathematical analysis and works well for a certain range of the length of TT for which the simple binary insertion does not, thus allowing us to take a complementary approach with the binary insertion.

Keywords

Cite

@article{arxiv.1705.00849,
  title  = {Improved Average Complexity for Comparison-Based Sorting},
  author = {Kazuo Iwama and Junichi Teruyama},
  journal= {arXiv preprint arXiv:1705.00849},
  year   = {2017}
}

Comments

21 pages, 2 figures