三大排序
作者:
saber阿尔托利亚
,
2021-11-11 23:52:50
,
所有人可见
,
阅读 229
public class a三大排序 {
//冒泡排序/交换排序
public static void sort1(int[] arr){
for(int i=0;i<arr.length-1;i++){
for(int j=i+1;j<arr.length;j++){ //小就交换
if(arr[i]>arr[j]){
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
}
//选择排序
public static void sort2(int[] arr){
for(int i=0;i<arr.length-1;i++){
int index=i;
for(int j=i+1;j<arr.length;j++){
if(arr[index]>arr[j]){ //最小值下标的传递
index=j;
}
}
int temp=arr[i];
arr[i]=arr[index];
arr[index]=temp;
}
}
//插入排序
public static void sort3(int[] arr){
for(int i=1;i<arr.length;i++){
for(int j=i;j>0;j--){
if(arr[j-1]>arr[j]){
int temp=arr[j-1];
arr[j-1]=arr[j];
arr[j]=temp;
}
}
}
}
public static void main(String[] args) {
int[] arr={7,5,6,9,4,2,3,1};
sort3(arr);
System.err.println(Arrays.toString(arr));
}
}