/*Java program for sorting an array using quicksort ...*/
here is the code ...
import java.io.*;
public class Quick {
public static void Quicksort(int[] arr, int lower, int upper) {
int i = 0;
if (lower < upper) {
i = split(arr, lower, upper);
Quicksort(arr, lower, i - 1);
Quicksort(arr, i + 1, upper);
}
}
public static int split(int[] arr, int lower, int upper) {
int t = 0;
int p = lower + 1;
int q = upper;
try {
while (p <= q) {
while (arr[p] < arr[lower])
p++;
while (arr[q] > arr[lower])
q--;
if (q > p) {
t = arr[q];
arr[q] = arr[p];
arr[p] = t;
}
}
} catch (Exception e) {
e.printStackTrace();
}
t = arr[q];
arr[q] = arr[lower];
arr[lower] = t;
return q;
}
public static void main(String args[]) {
int[] arr = {
6,
7,
9,
3,
5,
10,
34,
13
};
int lower = 0, upper = arr.length - 1;
Quicksort(arr, lower, upper);
for (int k: arr)
System.out.println(k);
}
}
No comments:
Post a Comment