Java大数据平台开发 学习笔记(7)—— 冒泡排序(优化版)

一、数据结构与算法:


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 日

猜你喜欢

转载自blog.csdn.net/qq_42209354/article/details/108498051