一、数据结构与算法:
1.1、创建 冒泡排序方法:
public static void bubbleSort(int[] arr){
for (int i=0; i < arr.length-1; i++){
boolean flag = false;
for (int j=0; j<arr.length-1-i; j++){
if (arr[j] > arr[j+1]){
flag = true;
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
if(!flag){
break;
}
}
}
1.2、上述代码 所增加的优化元素:
boolean flag = false; //记录排序是否提前完成
if(!flag){
break; //如果提前完成则无需继续比较,直接退出冒泡排序
}
1.3、main 方法:
public static void main(String[] args) {
//随机创建 8万 个数据
int arr[]= new int[80000];
for(int i=0; i<arr.length; i++){
arr[i] = (int)(Math.random()*80000);
}
//计算 冒泡排序时间
double start = System.currentTimeMillis();
System.out.println("计时开始:");
bubbleSort(arr);//此处写要测试的代码
double end = System.currentTimeMillis();
System.out.println("计时结束, 共耗时:"+ (double)((end-start)/1000) +"秒");
}
• 由 ChiKong_Tam 写于 2020 年 9 月 9 日