public class Quicksort
extends java.lang.Object
Quicksort
Java application illustrates a quicksort.
Part of the implementation (the partition
method) is left
as a student exercise.
Note:
This file contains only blank implementations ("stubs")
because this is a Programming Project for my students.
Java Source Code for this class (without
partition
:
http://www.cs.colorado.edu/~main/applications/Quicksort.java
Constructor and Description |
---|
Quicksort() |
Modifier and Type | Method and Description |
---|---|
static void |
main(java.lang.String[] args)
The main method illustrates the use of a quicksort to sort a
small array.
|
static void |
quicksort(int[] data,
int first,
int n)
This method cannot be used until the student implements
partition . |
public static void main(java.lang.String[] args)
args
- not used in this implementationspublic static void quicksort(int[] data, int first, int n)
partition
.
Sort an array of integers from smallest to largest, using a quicksort
algorithm.data
- the array to be sortedfirst
- the start index for the portion of the array that will be sortedn
- the number of elements to sort
Precondition:
data[first]
through data[first+n-1]
are valid
parts of the array.
Postcondition:
If n
is zero or negative then no work is done. Otherwise,
the elements of data
have been rearranged so that
data[first] <= data[first+1] <= ... <= data[first+n-1]
.java.lang.ArrayIndexOutOfBoundsException
- Indicates that first+n-1
is an index beyond the end of the
array.