public class pra01 {
public static void main(String[] args) {
int arr[]={13,2,1,5,6,17,15};
// selectionPai(arr);
// System.out.println(Arrays.toString(arr));
bubbleSort(arr);
System.out.println(Arrays.toString(arr));
}
public static void selectionPai(int arr[]){ //选择排序:每一轮都把最小的放到最前面
for(int i=0;i<arr.length-1;i++){
int min=i; //每轮假设下标最小的是值最小的
for(int j=i+1;j<arr.length;j++){
min=arr[j]<arr[min]?j:min; //min为每轮最小元素的下标
}
swap(arr,min,i); //下标为min和每轮最前面的交换
}
}
public static void bubbleSort(int arr[]){ //冒泡排序
for(int e=arr.length-1;e>0;e--){ //e为每次比较的最大的下标
for(int i=0;i<e;i++){ //i的最大值为e-1
if(arr[i]>arr[i+1]){
swap(arr,i,i+1);
}
}
}
}
public static void swap(int []arr,int min,int i){
// arr[min]=arr[i]^arr[min];
// arr[i]=arr[i]^arr[min];
// arr[min]=arr[i]^arr[min];
int temp=arr[i];
arr[i]=arr[min];
arr[min]=temp;
}
}
算法学习笔记01
最新推荐文章于 2024-07-19 22:36:19 发布