快排算法

来源:互联网 发布:手机淘宝产品链接 编辑:程序博客网 时间:2024/04/30 02:00

分析:快排主要思想是先在(1).数组中找一个作为基准,拿这个基准把比它大的放一边,比它小的放在另一边;然后再把它左右俩边的重复(1)操作

实现:(我将第一个元素作为基准)

public static void QuickSort(int[] numbers,int a,int b){
if(a>=b)
return; 
int tag=numbers[a],i=a,j=b;
while(i<j){
while(i<j&&numbers[j]>=tag){
j--;
}
if(i<j){
numbers[i]=numbers[j];
i++;
}
while(i<j&&numbers[i]<=tag){
i++;
}
if(i<j){
numbers[j]=numbers[i];
j--;
}
}
numbers[i]=tag;
QuickSort(numbers,a,i-1);
QuickSort(numbers,i+1,b);
}

0 0
原创粉丝点击