1. Introduction
The Quick sort algorithm developed by Hoare [9] is one of
the most efficient internal sorting algorithms and is the
method of choice for many applications. The algorithm is
easy to implement, works very well for different types of
input data, and is known to use fewer resources than any
other sorting algorithm [22]. All these factors have made it
very popular. Quick sort is a divide-and-conquer algorithm.
To sort an array A of elements, it partitions the array into
two parts, placing small elements on the left and large
elements on the right, and then recursive sorts the two
sub arrays. Sedgewick studied Quick sort in his Ph.D. thesis
[19] and it is widely described and studied in [12], [5], [6],
[20] and [24].
In addition to Quick sort, the paper also examines two new
sorting algorithms and compares their performances to the
different versions of Quick sort. Previous surveys only
studied select variations of the algorithm, and used them for
sorting small sized arrays, so this work will prove to be
invaluable to anyone interested in studying and
understanding the algorithm and it’s different versions.
Since its development in 1961 by Hoare, the Quick sort
algorithm has experienced a series of modifications aimed at