Maison > développement back-end > Tutoriel Python > 排序算法学习之冒泡排序

排序算法学习之冒泡排序

巴扎黑
Libérer: 2016-12-09 13:47:10
original
1507 Les gens l'ont consulté

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

  1. 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。

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

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

  4. 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。


代码: 

#!/usr/bin/env python
#-*-encoding:utf-8
#BubbleSort
def bubble_sort(param):
    p_len = len(param)
    for i in range(p_len):
        for j in range(i+1,p_len)[::-1]:
            if param[j] < param[j-1]:
                param[j],param[j-1]=param[j-1],param[j]
    return param
def main():
    param = [1,2,3,5,7,6,4]
    print bubble_sort(param)
if __name__=="__main__":
    main()
Copier après la connexion


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal