如果你理解之前的插入排序法那氣泡排序法就很容易理解,氣泡排序是兩個兩個以向後位移的方式比較大小在互換的過程好了不多了先上**吧如下:
首先還是乙個無序列表lis,老規矩列印出來和最後排序對比看,函式方法bubbie_sort氣泡排序,count計數也就是列表長度len(列表),第乙個for迴圈取列表中的第乙個值然後向後位移,第二個for迴圈取列表i+1也就是第二個值向後位移,這錶是第二個for只會取第乙個for後面的值好做比較,count長度一直15,如果兩個不一樣會報超出範圍的錯誤,if判斷lis[0]:10 > li[1]:30 如果10大於30,那麼就執行後面的操我這裡簡寫為a,b=b,a原理一樣兩個值互換。不大於就不變j向後位移繼續比較一致到lis最後乙個值比較完後迴圈結束,只要條件成立繼續比較,當然如果你不理解可以在迴圈內列印,**如下:
這樣就很直觀的展現內部排序的方法,第一遍迴圈就把最小的值仍到最前面,相當於迴圈一次把整個列表都遍歷一邊找出最小的放到最前面,第二次迴圈在把剩下最小的放入第二位,後面以此類推,好比有一大堆書要放入書架,假如你要從左到右,從小書到大書,你一眼就看到書的大小依次放入書架即可,當然程式沒我們能直觀判斷方便,所以它就把所有書比較一遍心裡有數了,然後根據你指定的規則運作就可以了,它的優勢也是計算能力,所謂各有所長嘛。
好了看了半天,該消化一下了,可以去做點類似題目來鞏固提高,歡迎收看,下次再見。
排序演算法之二 氣泡排序
氣泡排序 bubble sort 的演算法原理如下 從第乙個元素開始,每兩個元素進行比較,將較大的元素放在後面 比較之後,進行下一對比較 一直到最後乙個元素,這樣得到的最後乙個元素就是整個陣列裡面的最大值,這個過程就稱之為冒泡。以這種方式對剩餘的元素進行冒泡,最後就得到了排好序的陣列序列。氣泡排序法...
氣泡排序 氣泡排序法
冒泡法是一種簡單的排序方法,它的實現非常簡單。首先對n個專案進行掃瞄,比較相領兩個專案的大小,若發現違背大小次序則進行互換,由此可以使n個專案中的最大者換到最後。然後對剩下的未排序好的專案再進行掃瞄,使它們的最大者換到表的最後。以此類推,直到將表全部排序好為止。這種排序方法,每遍掃瞄以後,都縮短了待...
Python程式設計排序 氣泡排序法
氣泡排序法定義 它重複地比較要排序的所有元素列,如果順序 如從大到小 首字母從z到a 錯誤就把他們交換過來。比較元素的工作是重複地進行直到沒有相鄰元素需要交換,排序完成。氣泡排序1每次找出最大值 def bubble sort biggest a for i in range 0 len a 1 p...