python 冒泡法 排序


冒泡排序

冒泡排序(Bubble Sort):重復地遍歷要排序的數列,依次比較兩個元素,如果他們的順序不符就把他們交換過來。就像氣泡一樣,需要排序的元素通過比較、交換位置,一點一點浮到對應的位置。

 

個人理解的原理:

  1、比較相鄰的元素。例:需要進行升序排列,如果:元素1 > 元素2   那么元素1和元素2就互換位置。(每次比較就像一個小步驟)

  2、依次對每一對相鄰元素比較,從第一對到最后一對。每次完成后就把最大的元素排到當次的最后了。(這樣就完成了一個大步驟)

  3、重復從頭開始進行1、2的內容,但是因為前一次的比較后,都會有一個元素的位置確定,所以需要比較的元素會越來越少。

個人小節:

  升序就每次循環把最大的排每次循環的后面

  降序排列,就是每次循環把最小的排每次循環的最后面

 

list1 = [3, 5, 1, 2]  從左往右進行升序排列

 

具體實現:

for i in range(len(list1)-1):    # 這個循環負責設置冒泡排序進行(大步驟)的次數
    for index in range(len(list1)-i-1):  # 負責每個小步驟的進行,並提供索引
        if list1[index] > list1[index+1]:
            list1[index], list1[index+1] = list1[index+1], list1[index]
    print(list1)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM