氣泡排序法

2021-10-25 01:43:40 字數 1017 閱讀 1773

氣泡排序(bubble sort)

氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果它們的順序錯誤就把它們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端。

概念:

從前向後(或從後向前)依次比較相鄰的元素,若發現逆順序,則交換。小的向前換,大的向後換,像水底的氣泡逐漸向上冒,顧名思義氣泡排序法。

通俗一點就是把大的往上挪!向冒泡一樣。

是交換式排序法的一種。氣泡排序法效率較低

演算法描述

比較相鄰的元素。如果第乙個比第二個大,就交換它們兩個;

對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對,這樣在最後的元素應該會是最大的數;

針對所有的元素重複以上的步驟,除了最後乙個;

重複步驟1~3,直到排序完成。

直接看圖勝似千言萬語

氣泡排序法思路

1:外層迴圈:控制它要走幾次。

假設你有5個數,那就要走4次,最後一次不用走,最後那個數已經在它位置了所以就要length-1次。

2:內層迴圈:控制逐一比較,如果發現前乙個數比後乙個數大,則交換。

注意!因為越比較長度就越小了,所以長度要length-1-i。

public

class

demo5_3

;int temp=0;

//中間值

//-------氣泡排序法

//外層迴圈,它決定一共走幾趟

for(

int i =

0;i1;i++)}

}//輸出結果

for(

int i =

0;i}

氣泡排序 氣泡排序法

冒泡法是一種簡單的排序方法,它的實現非常簡單。首先對n個專案進行掃瞄,比較相領兩個專案的大小,若發現違背大小次序則進行互換,由此可以使n個專案中的最大者換到最後。然後對剩下的未排序好的專案再進行掃瞄,使它們的最大者換到表的最後。以此類推,直到將表全部排序好為止。這種排序方法,每遍掃瞄以後,都縮短了待...

排序 氣泡排序法

氣泡排序法,是最簡單的一種排序方法,從第乙個位置開始與相鄰位置比較,判斷是否需要交換位子。第一趟從第乙個位置開始,直到最後乙個位置,a n 1 確定最大 以公升序為例子 的數放在最後一位,a n 1 第二趟,繼續從第乙個位置開始,倒數第二位,a n 2 確定倒數第二大的數在倒數第二位a n 2 演算...

氣泡排序法

從小到大排序 int myarray new int 取長度最長的片語 冒泡法 for int j 1 jfor int i 0 i 如果 myarray i myarray i 1 則 myarray i 上浮一位 if myarray i myarray i 1 從大到小排序 int myarr...