Engineering a sort function

@article{Bentley1993EngineeringAS,
  title={Engineering a sort function},
  author={J. Bentley and M. McIlroy},
  journal={Software: Practice and Experience},
  year={1993},
  volume={23}
}
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. 
Pattern-defeating Quicksort
A better approach to QuickSort implementation
Experiments for Algorithm Engineering
Introspective sorting and selection revisited
Introspective sorting and selection revisited
Engineering Java 7's Dual Pivot Quicksort Using MaLiJan
Engineering Quicksort
Building a new sort function for a C library
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 29 REFERENCES
Implementing Quicksort programs
The UNIX system: Theory and practice in the construction of a working sort routine
  • J. P. Linderman
  • Computer Science
  • AT&T Bell Laboratories Technical Journal
  • 1984
Quicksort with Equal Keys
A retargetable compiler for ANSI C
The errors of tex
  • D. Knuth
  • Computer Science
  • Softw. Pract. Exp.
  • 1989
Algorithms in C
A Framework for Adaptive Sorting
Optimistic sorting and information theoretic complexity
Programming pearls
Structured Programming with go to Statements
...
1
2
3
...