首页 > 代码库 > 交换排序之冒泡排序

交换排序之冒泡排序

今天大鹏哥跟大家学习下交换排序中的冒泡排序。

为什么叫冒泡排序呢,因为在这种排序过程中越大的元素会经由交换慢慢”浮”到数列的顶端,故名冒泡排序。冒泡排序就是把小的元素往前调或者把大的元素往后调。

         冒泡排序基本操作:

                   比较相邻的元素,如果第一个比第二个大,则交换他们两个。

         Java实现如下:

                  

public class BubbleSort {

 

    public static void main(String[] args) {

       // TODO Auto-generatedmethod stub

       int[] a={49,38,65,97,76,13,27,50};

       System.out.print("排序前:");

       for(int x:a){

           System.out.print(x+",");

       }

       bubbleSort(a);

       System.out.print("排序后:");

       for(int x:a){

           System.out.print(x+",");

       }

    }

 

    private static void bubbleSort(int[] a) {

       // TODO Auto-generatedmethod stub

       int temp;

       for(int j=1;j<a.length;j++){

           for(int i=0;i<a.length-1;i++){

              temp = a[i];

              if(a[i+1]<a[i]){

                  a[i]=a[i+1];

                  a[i+1]=temp;

              }

           }

       }

    }

 

}

 

冒泡排序的时间复杂度为O(n^2)(冒泡排序效率比较低,在数据规模较小时,可以采用,数据规模比较大时,最好用其他排序方法)。

 

交换排序之冒泡排序