直接贴代码
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Sort {
//快速排序
public static void quickSort(int[] arr , int left, int right){
int temp = 0;
int l = left;
int r = right;
if (l <= r) {
temp = arr[l];
while (l != r) {
while (r > l && arr[r] >= temp)
r--;
arr[l] = arr[r];
while (r > l && arr[l] <= temp)
l++;
arr[r] = arr[l];
}
arr[r] = temp;
quickSort(arr,left,l-1);
quickSort(arr,r+1,right);
}
}
//冒泡排序
public static void bubbleSort(int[] arr){
for(int i = 0 ; i< arr.length ;i++){
for(int j = 0 ; j< arr.length - i - 1 ; j++){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
//插入排序
public static void insertSort(int[] arr){
for(int i = 1 ;i < arr.length ; i++){
int temp = arr[i];
int j ;
for(j = i;j>0 && arr[j -1] >= temp ;j-- ){
arr[j] = arr[j-1];
}
arr[j] = temp;
}
}
//测试
public static void main(String[] args) {
int[] arr = {21,11,31,22,43,1,3,97};
quickSort(arr,0,arr.length-1);
for(int a:arr){
System.out.println(a);
}
}
}
具体解析看这个,讲解的非常好
快速排序