交換排序之冒泡排序

今天大鵬哥跟大家學習下交換排序中的冒泡排序。

爲什麼叫冒泡排序呢,因爲在這種排序過程中越大的元素會經由交換慢慢”浮”到數列的頂端,故名冒泡排序。冒泡排序就是把小的元素往前調或者把大的元素往後調。

         冒泡排序基本操作:

                   比較相鄰的元素,如果第一個比第二個大,則交換他們兩個。

         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)(冒泡排序效率比較低,在數據規模較小時,可以採用,數據規模比較大時,最好用其他排序方法)。

 

發佈了56 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章