1.选择排序
/**
* 选择排序
* @param nums
* @return
*/
public static int[] sort(int[] nums){
for(int i=0;i<nums.length-1;i++){
for (int j=i+1;j<nums.length;j++){
if(nums[i]>nums[j]){
int tmp=nums[i];
nums[i]=nums[j];
nums[j]=tmp;
}
}
}
return nums;
}
2.冒泡排序
/**
* 标准冒泡排序
* @param nums
* @return
*/
public static int[] sort1(int[] nums){
for(int i=0;i<nums.length-1;i++){
for(int j=0;j<nums.length-i-1;j++){
if(nums[j]>nums[j+1]){
int tmp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=tmp;
}
}
}
return nums;
}
3.快速排序
/**
* 快速排序
* @param a
* @param l
* @param r
*/
public static void quickSort(int[] a,int l,int r){
if(l<r) {
int x = a[l];
int i = l;
int j = r;
while (i < j) {
while (a[j] > x && i < j) {
j--;
}
if (i < j)
a[i++] = a[j];
while (a[i] < x && i < j) {
i++;
}
if (i < j)
a[j--] = a[i];
}
a[i] = x;
quickSort(a, l, i - 1);
quickSort(a, i + 1, r);
}
}