ITPub博客

首页 > 应用开发 > Java > 冒泡排序

冒泡排序

原创 Java 作者:壹頁書 时间:2018-01-05 18:38:33 0 删除 编辑
  1. public class T {  
  2.     public static void main(String[] args) {  
  3.         int[] data=new int[]{8,4,3,1,7,6,2,9};  
  4.         t1(data);  
  5.         t2(data);  
  6.         t3(data);  
  7.     }  
  8.       
  9.     //朴素的排序  
  10.     private static void t1(int[] data){  
  11.         for(int i=0;i<=data.length;i++){  
  12.             for(int j=i+1;j<data.length;j++){  
  13.                 if(data[i]>data[j]){  
  14.                     int tmp=data[i];  
  15.                     data[i]=data[j];  
  16.                     data[j]=tmp;  
  17.                 }  
  18.             }  
  19.         }  
  20.           
  21.         for(int i: data){  
  22.             System.out.println(i);  
  23.         }  
  24.         System.out.println("===================");  
  25.     }  
  26.       
  27.     //冒泡排序  
  28.     private static void t2(int[] data){  
  29.         for(int i=0;i<data.length;i++){  
  30.             for(int j=(data.length-1);j>i;j--){  
  31.                 if(data[i]>data[j]){  
  32.                     int tmp=data[i];  
  33.                     data[i]=data[j];  
  34.                     data[j]=tmp;  
  35.                 }  
  36.             }  
  37.         }  
  38.         for(int i: data){  
  39.             System.out.println(i);  
  40.         }  
  41.         System.out.println("===================");  
  42.     }  
  43.       
  44.     //冒泡排序优化  
  45.     private static void t3(int[] data){  
  46.         boolean flag=true;  
  47.         for(int i=0;i<data.length&&flag;i++){  
  48.             flag=false;  
  49.             for(int j=(data.length-1);j>i;j--){  
  50.                 if(data[i]>data[j]){  
  51.                     int tmp=data[i];  
  52.                     data[i]=data[j];  
  53.                     data[j]=tmp;  
  54.                     flag=true;  
  55.                 }  
  56.             }  
  57.         }  
  58.         for(int i: data){  
  59.             System.out.println(i);  
  60.         }  
  61.         System.out.println("===================");  
  62.     }  
  63. }  

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29254281/viewspace-2149756/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-10-19

  • 博文量
    620
  • 访问量
    6339922