在排序過程中對相鄰元素進行兩兩比較,越小的元素會慢慢浮到前面(陣列低下標處),經過若干趟比較,元素排序完畢。
程式有兩層for迴圈構成,外層迴圈控制趟數,內層迴圈控制該趟的比較次數,內部巢狀乙個用於交換元素的if語句。
外層迴圈:
第一趟比較可以浮出最小的元素,第二趟浮出第二小的元素…每趟迴圈都可以浮出1個元素,以此類推length個元素共需要length-1趟比較。
內層迴圈:
第一趟需要進行length-1次比較,第二趟需要進行length-2次比較…每經過一趟,下趟的比較次數就要減1,第n趟需要比較length-n次。
從前往後比較:
public
static
void
bubble_sort
(int arr)
}}
從後往前比較:
public
static
void
bubble_sort
(int arr)
}}
冒泡 bubble 排序演算法
氣泡排序是穩定的排序演算法。1 氣泡排序演算法的基本思想 氣泡排序的方法為 將被排序的記錄陣列a 1.n 垂直排列,每個記錄a i 看做重量為a i 氣泡。根據輕氣泡不能在重氣泡之下的原則,從下往上掃瞄陣列a 凡是掃瞄到違反本原則的輕氣泡,就是其向上 漂浮 如此反覆進行,知道最後任何兩個氣泡都是輕者...
排序演算法 氣泡排序法
氣泡排序法 bubble sort 是所有排序演算法中最簡單,最基本的一種。氣泡排序法的基本思路就是交換排序,通過相鄰資料的比較來達到排序的目的。氣泡排序演算法通過多次比較和交換資料來實現排序,其排序流程如下 1 對陣列中的各元素依次比較相鄰元素的大小。2 如果前面的資料大於後面的資料,就交換這兩個...
演算法排序 氣泡排序法
接下來我將用幾篇文章來講述關於演算法排序的思想,首先是最簡單的氣泡排序法。它適用於所有的情況,時間複雜度較大 為o n 那麼我將用圖示和 來解釋這個演算法。首先,氣泡排序法的思想就是將最大值或者最小值置於最上方或者最下方。那麼我們需要兩個for迴圈,第乙個for迴圈中每一次迴圈的結果是將未排序的部分...