冒泡法排序演算法

2021-10-22 17:26:34 字數 1033 閱讀 8174

演算法筆記–再回顧冒泡法排序

冒泡法是我們學習程式設計接觸到的第乙個排序演算法,簡單而形象,整個比對過程跟泉水冒泡十分形似。冒泡法排序首先拿第乙個元素與相鄰元素進行比較,如果它比較大,就相互交換,這樣第一輪遍歷下來,最大的值就確定了,第n輪也是如此,都是從第乙個開始,一直比較到倒數第n個,這樣最大的n個就排好了。

解題:用乙個陣列來表示元素集合

拿第乙個元素與相鄰的元素相比,迴圈遍歷到陣列最後,確定最大值

拿第乙個元素與相鄰的元素相比,迴圈遍歷到陣列倒數第二個,確定次大值

迴圈遍歷直至陣列完全排序

時間複雜程度:

案例實踐

public

class

bubblesort

;// sort(a);

sortoptimize

(a);

for(

int i =

0; i < a.length; i++)}

private

static

void

sort

(int arr)

k++;}

}system

.out.

println

("冒泡法迴圈的次數: "

+ k);}

/** * 冒泡法優化,對於已經排序好的資料可以明顯減少迴圈此時

* @param arr

*/private

static

void

sortoptimize

(int arr)

k++;}

if(!change)

}system

.out.

println

("優化冒泡法迴圈的次數: "

+ k);}

}

演算法 氣泡排序法

氣泡排序就是把小的元素往前調或者把大的元素往後調 c語言 include define size 8 void bubble sort int a,int n void bubble sort int a,int n int main int i bubble sort number,size fo...

排序演算法 氣泡排序法

氣泡排序法 bubble sort 是所有排序演算法中最簡單,最基本的一種。氣泡排序法的基本思路就是交換排序,通過相鄰資料的比較來達到排序的目的。氣泡排序演算法通過多次比較和交換資料來實現排序,其排序流程如下 1 對陣列中的各元素依次比較相鄰元素的大小。2 如果前面的資料大於後面的資料,就交換這兩個...

演算法排序 氣泡排序法

接下來我將用幾篇文章來講述關於演算法排序的思想,首先是最簡單的氣泡排序法。它適用於所有的情況,時間複雜度較大 為o n 那麼我將用圖示和 來解釋這個演算法。首先,氣泡排序法的思想就是將最大值或者最小值置於最上方或者最下方。那麼我們需要兩個for迴圈,第乙個for迴圈中每一次迴圈的結果是將未排序的部分...