python語言實現氣泡排序(13)

2021-09-28 10:32:07 字數 637 閱讀 6410

首先介紹氣泡排序演算法:重複地遍歷要排序的數列,一次比較兩個元素,如果他們順序錯誤就交換(從小到大)。

演算法流程:

1.比較相鄰的元素,如果第乙個比第二個大,交換兩者。

2.對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。這步做完,最後的元素是最大元素。

3.針對所有元素重複以上步驟,除了最後乙個。

4.持續每次對越來越少的元素重複上面的步驟,直到排序完成。

python程式實現:

def bubble_sort(alist):

"""氣泡排序,第乙個數與第二個數比較大小,將較大的數放在第二位,

然後將第二個數與第三個數進行比較,將較大數放在第三位,依次類推"""

i=0j=1

n=0while nalist[j]:

b=alist[i]

alist[i]=alist[j]

alist[j]=b

i+=1

j+=1

else:

i+=1

j+=1

n+=1

i=0j=1

return alist

print(bubble_sort([25,80,72,64,39]))

氣泡排序 c語言實現

氣泡排序 排序思想 1.對於乙個長度為n的陣列,進行n 1次迴圈 2.第一次次迴圈中,先將1和2元素比較,如果元素1比元素2大,則交換其位置,接著比較元素2和元素3,以此類推,最終最大的元素排在最後一位 3.接著第二次迴圈,要排序的元素個數減少乙個 最大的已經放在最後一位 重複2的過程 4.這樣,每...

C語言實現氣泡排序

氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。氣泡排序演算法的運作如下 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從...

Golang語言實現氣泡排序

氣泡排序就是每次內層迴圈找出最大的值,並放在切片的最右邊,找最大值的方式 從下標為零的開始比較 下標為0與下標為1的大小,比它前面 i 1 的大就跟前面的交換,直到最大的到最右邊即就是 等於end package main import fmt func main bubblesort s1 fmt...