Java封装快速排序和冒泡排序操作类
public class Quicksort_value {
/**
* 快速排序
* @param R
* @param s
* @param t
* @return
*/
private static int partition(int[] R,int s,int t){
int i=s,j=t,tmp=R[i];
do{
while((R[j])>=tmp && (i<j)){
j--;
}
if(i<j) R[i++]=R[j];
while((R[i])<=tmp && (i<j)){
i++;
}
if(i<j) R[j--]=R[i];
}while(i!=j);
R[i]=tmp;
return i; //返回基准被最后定位的位置
}
private static void quickSort(int[] R,int start,int end){
int i;
if(start<end){
i=partition(R, start, end); //分区
quickSort(R, start, i-1);
quickSort(R, i+1, end);
}
}
/**
* 冒泡排序
* @param R
*/
private static void bubbleSort(int[] R){
for(int i=0;i<R.length;i++){
for(int j=i+1;j<R.length;j++){
if(R[i]>R[j]){
int temp;
temp=R[i];
R[i]=R[j];
R[j]=temp;
}
}
}
}
}