Engineering a sort function
Authors:
- 1 November 1993
- journal article
- research article
- Published by Wiley in Software: Practice and Experience
- Vol. 23 (11) , 1249-1265
Abstract
We recount the history of a new qsortfunction for a C library. Our function is clearer, faster and more robust than existing sorts. It chooses partitioning elements by a new sampling scheme; it partitions by a novel solution to Dijkstra's Dutch National Flag problem; and it swaps efficiently. Its behavior was assessed with timing and debugging testbeds, and with a program to certify performance. The design techniques apply in domains beyond sorting.Keywords
This publication has 13 references indexed in Scilit:
- A retargetable compiler for ANSI CACM SIGPLAN Notices, 1991
- The errors of texSoftware: Practice and Experience, 1989
- Implementing Quicksort programsCommunications of the ACM, 1978
- Quicksort with Equal KeysSIAM Journal on Computing, 1977
- The analysis of Quicksort programsActa Informatica, 1977
- Comments on the Nature of Automatic Quadrature RoutinesACM Transactions on Mathematical Software, 1976
- Structured Programming with go to StatementsACM Computing Surveys, 1974
- Algorithm 347: an efficient algorithm for sorting with minimal storage [M1]Communications of the ACM, 1969
- Algorithm 271: quickersortCommunications of the ACM, 1965
- QuicksortThe Computer Journal, 1962