quicksort,
why this code makes error
publicclass QuickSort
{
publicstaticint cutoff=3;
staticint[]arr=newint[10];
publicstaticvoid swap(int []A,int x,int y)
{
int temp=0;
temp=A[x];
A[x]=A[y];
A[y]=temp;
}//end swap function
publicstaticint median3(int[]A,int left,int right)
{
int Center=(left+right)/2;
if(A[left]>A[Center])
swap(A,left,Center);
if(A[left]>A[right])
swap(A,left,right);
if(A[Center]>A[right])
swap(A,Center,right);
swap(A,Center,right-1);
return A[right-1];
}
publicstaticvoid QuickSort(int[]A,int left,int right)
{
int i,j;
int pivot;
//if(left+cutoff<=right)
//{//}
pivot=median3(A,left,right);
i=left;
j=right-1;
for(;;)
{ System.out.println("left="+ left+" right="+right+"i= "+i+" "+"j= "+j+" A.length="+A.length);
try{
while(A[++i]<pivot){}
//System.out.println("xxleft="+ left+" right="+right+"i= "+i+" "+"j= "+j+" A.length="+A.length);
while(A[--j]<pivot){}
}catch(Exception e){System.out.println("left="+ left+" right="+right+"i= "+i+" "+"j= "+j+" A.length="+A.length);}
if(i<j)
swap(A,i,j);
else
break;
}//end for
swap(A,i,right-1);
QuickSort(A,left,i-1);
QuickSort(A,i+1,right);
}//end QuicSort Constructor
publicstaticvoid main(String[]args)
{
int i=0;;
int[]arr=newint[10];
int j=0;
for( i=10;i>0;i--)
{
arr[j]=i;
j++;
}
QuickSort(arr,0,arr.length-1);
for(i=0;i<arr.length;i++)
System.out.println(arr[i]);
}//end main function
}//end class
">

