Theory of Computing Systems

, Volume 40, Issue 4, pp 327-353

First online:

Sorting Stably, in Place, with O(n log n) Comparisons and O(n) Moves

  • Gianni FranceschiniAffiliated withDipartimento di Informatica, Universita di Pisa, Largo B, Pontecorvo 3 Email author 

Rent the article at a discount

Rent now

* Final gross prices may vary according to local VAT.

Get Access


We settle a long-standing open question, namely whether it is possible to sort a sequence of n elements stably (i.e., preserving the original relative order of the equal elements), using O(1) auxiliary space and performing O(n log n) comparisons and O(n) data moves. Munro and Raman stated this problem in J. Algorithms (13, 1992) and gave an in-place but unstable sorting algorithm that performs O(n) data moves and O(n1+ε) comparisons. Subsequently (Algorithmica, 16, 1996) they presented a stable algorithm with these same bounds. Recently, Franceschini and Geffert (FOCS 2003) presented an unstable sorting algorithm that matches the asymptotic lower bounds on all computational resources.