核心目标和堆排序,选择排序类似,也是每次找到一个最小值或者最大值放在合适的位置。不过冒泡排序借助的是相邻元素来进行比较交换
public static void main(String[] args) {
int[] arr = {9,5,2,7,3,6,8};
Bulllesort(arr);
System.out.println((Arrays.toString(arr)));
}
public static void Bulllesort(int[] arr){
//按照每次找最小
for(int bound = 0;bound<arr.length;bound++){
for(int cur = arr.length-1;cur>bound;cur--){//从后面往前面找,如果前面那个元素大于了后面这个,就交换位置
if(arr[cur-1]>arr[cur]){
swap(arr,cur,cur-1);
}
}
}
}
public static void swap(int[] arr,int i,int j){
int tap = arr[i];
arr[i] = arr[j];
arr[j] = tap;
}