A class of sorting algorithms based on Quicksort
Communications of the ACM - Lecture notes in computer science Vol. 174
Algorithms
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Communications of the ACM
Best sorting algorithm for nearly sorted lists
Communications of the ACM
Implementing Quicksort programs
Communications of the ACM
Some performance tests of “quicksort” and descendants
Communications of the ACM
Algorithms 402: Increasing the efficiency of quicksort
Communications of the ACM
Algorithm 347: an efficient algorithm for sorting with minimal storage [M1]
Communications of the ACM
Communications of the ACM
An empirical study of minimal storage sorting
Communications of the ACM
Communications of the ACM
Certification of Algorithms 63, 64, 65: Partition, quicksort, find
Communications of the ACM
Programming pearls: how to sort
Communications of the ACM
Data Structure Techniques
Data Structures and Algorithms
Data Structures and Algorithms
Acceleration of sweep-line technique by employing smart quicksort
Information Sciences—Informatics and Computer Science: An International Journal
Hi-index | 0.02 |
The Quicksort algorithm is known to be one of the most efficient internal sorting techniques. Quicksort has received considerable attention almost from the moment of its invention. This paper reviews some of the important improvements to Quicksort that have appeared in the literature. Historically, the improvements to Quicksort have been in one of the following areas: (1) algorithms for determining a better pivot value, (2) algorithms that consider the size of the generated subfiles, and (3) various schemes used to partition the file. Despite improvements in these areas, the worst case situation of &Ogr;(n2) comparisons for sorted or nearly sorted files still remains. This paper proposes a fourth research area for Quicksort improvement designed to remove the worst case behavior due to sorted or nearly sorted files. During the partitioning process (using any scheme) determine if the left and right subfiles are in sorted order. This is a minor but very effective modification to the Quicksort algorithm. A new Quicksort algorithms, Qsorte, is presented that provides an early exit for sorted subfiles. Test results on randomly generated lists, nearly sorted lists, sorted and sorted lists in reverse order are given for Quicksort, Quickersort, Bsort, Qsorte and several other algorithms. Results show Qsorte performs just as well as Quicksort for random files and in addition has &Ogr;(n) comparisons for sorted or nearly sorted files and &Ogr;(n) comparisons for sorted or nearly sorted files in reverse.