/*数组高级冒泡排序
思路:提取元素先遍历数组,再逐项对比。
第一次:arr[0]与arr[1],arr[1]与arr[2],arr[2]与arr[3],arr[3]与arr[4]比较4次
第二次:arr[0]与arr[1],arr[1]与arr[2],arr[2]与arr[3]比较3次
第三次:arr[0]与arr[1],arr[1]与arr[2]比较2次
第一次:arr[0]与arr[1]比较1次*/
public class test8 {
public static void main(String[] args) {
int[] arr= {24,69,80,57,13};
bubbleSort(arr);
print(arr);
}
public static void bubbleSort(int[] arr) {
for (int i = 0; i < arr.length-1; i++) {//外循环只需要比较arr.length-1就可以了
for (int j = 0; j < arr.length-1-i; j++) {//-1为了防止索引越界,-i为了提交高效率
if(arr[j]>arr[j+1]) {
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
/*打印数组,返回值类型void,参数列表int[]arr */
public static void print(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]+"");
}
}
}
高级冒泡程序
最新推荐文章于 2023-03-05 22:14:01 发布