首页 > 代码库 > Java实现冒泡排序

Java实现冒泡排序

 1  package exchange; 2  3 import java.util.Scanner; 4  5 /*通过一系列交换完成,第一个和第二个比,大则交换,第二个和第三个比,大则交换...最终最大的那个会到最后一个,一趟冒泡完成 6  * 前n-1个元素再进行同样的操作,直到一趟排序过程中没有发生一次交换。 7  * 时间复杂度:O(n^2) 8  * 空间复杂度O(1)*/ 9 public class maopaosort {10 11     public static void main(String args[]){12         Scanner cin = new Scanner(System.in);13         String str = cin.nextLine();14         String[] st = str.split(" ");15         int[] c = new int[st.length];16         for(int i=0;i<st.length;i++){17             c[i]=Integer.parseInt(st[i]);18         }19         20         sort(c);21         for(int i=0;i<c.length;i++){22             System.out.print(c[i]);23             System.out.print(" ");24         }25         cin.close();26     }27     public static void sort(int R[]){28         int length = R.length;29         int temp = 0;30         int flag = 0;31         for(int i=length;i>0;i--){32             flag =0;33             for(int j=1;j<i;j++){34                 if(R[j-1]>R[j]){35                     temp = R[j];36                     R[j]=R[j-1];37                     R[j-1]=temp;38                     flag = 1;39                 }40             }41             if(flag ==0)//一趟排序中如果没有发生元素交换,则证明序列有序,排序结束42                 return;43         }44     }45 }

 

Java实现冒泡排序