java实现快速排序

来源:互联网 发布:网络正常下载速度很慢 编辑:程序博客网 时间:2024/06/05 09:51
public static void Quick_sortAndWrite(int arrays[],int start,int end) {
// TODO Auto-generated method stub
if(start>=end)
return;
int i=start,j=end;
int l=i;
int temp=0;

while(i<j){

/*这里要先判断数组下边是否越界*/

while( i<=end && arrays[i]<=arrays[l]){
i=i+1;

}

/*这里要先判断数组下边是否越界*/

while(j>=start && arrays[j]>arrays[l]){
j=j-1;
}
if(i<j){
temp=arrays[j];
arrays[j]=arrays[i];
arrays[i]=temp;
}
}
//第一个元素交换到中轴处
temp=arrays[l];
arrays[j]=temp;
arrays[l]=arrays[j];
//递归对左右两个分区排序
Quick_sortAndWrite(arrays,start,j-1);
Quick_sortAndWrite(arrays,j+1,end);


}
0 0