1. 冒泡排序
![a142f7778d56ffa9860447492cbc6512]()
package com.baidu.www;import java.util.Arrays;public class Test {public static void main(String[] args) {int[] arr = {24, 69, 80, 57, 13};boolean flag = false;for (int i = 0; i < arr.length - 1; i++) {for (int j = 0; j < arr.length - 1 - i; j++) {if(arr[j] > arr[j + 1]){// 交换位置int t = arr[j];arr[j] = arr[j+1];arr[j+1] = t;flag = true;}}if(!flag) break;}System.out.println(Arrays.toString(arr));}
}
2. 选择排序
![0cdc03fc8cd93454e0832e0f2b81d8fc]()
package com.baidu.www;import java.util.Arrays;public class Test {public static void main(String[] args) {int[] arr = {24, 69, 80, 57, 13};boolean flag = false;for (int i = 0; i < arr.length - 1; i++) {for(int j = i + 1; j < arr.length; j++){if(arr[i] > arr[j]){int t = arr[i];arr[i] = arr[j];arr[j] = t;flag = true;}}if(!flag) break;}System.out.println(Arrays.toString(arr));}
}
3. 直接插入排序
![f09abf57f4ad52aa0d58d157cb06cdfb]()
package com.baidu.www;import java.util.Arrays;public class Test {public static void main(String[] args) {int[] arr = {24, 69, 80, 57, 13};// 直接插入排序for (int i = 1; i < arr.length; i++) {int j = i;while (j > 0 && arr[j] < arr[j-1]){
// int t = arr[j];
// arr[j] = arr[j-1];
// arr[j-1] = t;swapValue(arr, j, j-1);j--;}}System.out.println(Arrays.toString(arr));}public static void swapValue(int[] arr, int i, int j){int t = arr[i];arr[i] = arr[j];arr[j] = t;}
}
4. 希尔排序
希尔排序是插入排序的优化
![790f76b608043bce547e060f1da157a8]()
5. 快速排序
6. 归并排序
7. 基数排序
8. 堆排序