經典排序之氣泡排序

2021-07-10 21:48:45 字數 668 閱讀 4838

邊學習邊記載。

氣泡排序是經典排序之一,時間複雜度是o(n^2),,以如下陣列為例:

陣列:5 6 3 1 8 7 2 4,以從小到大排序為例(i表示陣列下標,初始化為0):

5 6 3 1 8 7 2 4 ——>

第一輪是從0到n-1比較,n為陣列的長度:

(1)首先i=0;比較5,6,由於5<6,所以保持不變;

(2)i=1;比較6和3, 6>3,所以經過第二次排序後陣列變成 5 3 6 1 8 7 2 4

(3)依次比較到陣列下標i=7;第一輪比較結果  5 3 1 6 8 2 4 7;

第二輪是比較i從0到n-2;迴圈(1),(2),(3),直到能參與比較的數只有乙個;

總結基本步驟如下:

n為陣列長度

1.比較相鄰的前後二個資料,如果前面資料大於後面的資料,就將二個資料交換。

2.這樣對陣列的第0個資料到n-1個資料進行一次遍歷後,最大的乙個資料就「沉」到陣列第n-1個位置。

3.n=n-1,如果n不為0就重複前面二步,否則排序完成。

實現**如下:

public  int bubblesort(int a, int n) 

}data[i] = a[i];

} return data;

}

經典排序之氣泡排序

關於排序,是我們經常用到的。目前,就我了解的,應該有 氣泡排序 選擇排序 希爾排序 折半排序 快速排序 堆排序 桶排序 歸併排序 基數排序 其實還有很多,慢慢來吧乙個乙個總結一下,希望在鞏固自己的同時也能夠幫到大家 氣泡排序的原理 以公升序舉例 氣泡排序就是從第乙個數開始和後乙個數比較 如果如果前者...

經典排序之氣泡排序

1.i 0被定為第乙個,後面逐漸比較這個值 1位置,2位置,知道 n 1 位置,第一輪排序結束,最小值被最先固定,開始第二輪,i 在於後面的值進行比較,輪迴往復,直到i n 1,迴圈結束。注 這樣的好處是,最小值被最先固定。public static int bubblesort int arr r...

經典排序之 氣泡排序

氣泡排序和選擇排序一樣是我們接觸相對早的一種排序演算法。下面簡單講解一下氣泡排序的思想 演算法思想 氣泡排序,顧名思義,排序的過程就像氣泡在水裡上公升一樣。就是對陣列進行不斷地掃瞄,每當遇到比標記的資料大的元素就交換兩個資料。這樣掃瞄一遍之後就會產生乙個最小或最大的元素位於最終的位置上。之後進行第二...