public class Test2 {
public static void main(String[] args) {
inta[] = {1,2,3,4,5,6,7,8};
doSomething(a,0,a.length-1);
for(int i = 0; i < a.length; i++) {
System.out.println(a[i]+ " " );
}
}
private static void doSomething(int a[],int start, int end)
{
if(start < end)
{
int position = Core(a,start, end);
doSomething(a, start, position-1);
doSomething(a, position+1, end);
}
}
private static int Core(int a[], int start, int end)
{
int x = a[end];
int i = start;
for(int j = start;j<=end-1;j++)
{
if(a[j] >= x)
{
swap(a,i,j);
i++;
}
}
swap(a, i, end);
returni;
}
privatestatic void swap(int[] a, int i, int j) {
inttemp = a[i];
a[i]= a[j];
a[j]= temp;
}
}