A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. //使用冒泡排序方式对指定程序进行排序  
  2.   
  3. class Demo1   
  4. {  
  5.     public static void main(String[] args)   
  6.     {  
  7.         int arr[]={22,63,89,13,6};  
  8.         //打印原数组  
  9.         printArray(arr);  
  10.         //调用排序方法  
  11.         bubbleSort(arr);  
  12.         //打印排序后的数组  
  13.         printArray(arr);  
  14.     }  
  15.   
  16.     /*
  17.     冒泡排序
  18.     1、先从头角标相邻两个元素之间进行比较,将较大值存放在后一个元素中,然后再与后一个元素的进行比较,直至最大值存放到最后一个元素中。
  19.     2、再重复1操作,每次计较次数减一,一圈比完后存放的较大元素不再参与比较。
  20.     */  
  21.   
  22.     public static void bubbleSort(int[] arr)  
  23.     {  
  24.         for (int x=0;x<arr.length-1;x++)  
  25.         {  
  26.             for (int y=0;y<arr.length-1-x;y++)//-x:让没每一次比较的元素减少。-1:避免角标越界。  
  27.             {  
  28.                 if(arr[y]>arr[y+1])  
  29.                     swap(arr,y,y+1);  
  30.             }  
  31.         }  
  32.     }  
  33.     //遍历数组  
  34.     public static void printArray(int[] arr)  
  35.     {  
  36.         System.out.print("[");  
  37.         for (int x=0;x<arr.length;x++)  
  38.         {  
  39.             if(x!=arr.length-1)  
  40.                 System.out.print(arr[x]+",");  
  41.             else  
  42.                 System.out.print(arr[x]+"]");  
  43.         }  
  44.         //换行  
  45.         System.out.println();  
  46.     }  
  47.   
  48.     //互换方法  
  49.     public static void swap(int[] arr,int a,int b)  
  50.     {  
  51.         arr[a]=arr[a]^arr[b];  
  52.         arr[b]=arr[a]^arr[b];  
  53.         arr[a]=arr[a]^arr[b];  
  54.     }  
  55. }  
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马