%0 Journal Article %1 sedgewick1978implementing %A Sedgewick, Robert %D 1978 %I ACM %J Communications of the ACM %K algorithm parallel quicksort sorting %N 10 %P 847-857 %T Implementing quicksort programs %U http://dl.acm.org/citation.cfm?id=359631 %V 21 %X This paper is a practical study of how to implement the Quicksort sorting algorithm and its best variants on real computers, including how to apply various code optimization techniques. A detailed implementation combining the most effective improvements to Quicksort is given, along with a discussion of how to implement it in assembly language. Analytic results describing the performance of the programs are summarized. A variety of special situations are considered from a practical standpoint to illustrate Quicksort's wide applicability as an internal sorting method which requires negligible extra storage.