氣泡排序(bubble sort)是一種基於交換的排序演算法。重複地遍歷數列,一次比較兩個元素,如果它們的順序錯誤就將其交換。
氣泡排序的具體原理如下:
比較相鄰的元素。如果第乙個比第二個大,就交換二者
對每一對相鄰元素做同樣的操作,從開始第一對到結尾的最後一對。這步操作後,最後的元素即為最大的數。
針對所有元素重複以上的步驟,除了最後乙個
持續每次對越來越少的元素重複以上步驟,直到沒有任何一對數字需要比較
def
bubble_sort
(alist):
for j in range(0,len(alist-1)):
for i in range(j):
if alist[i] > alist[i+1]:
alist[i],alist[i+1] = alist[i+1],alist[i]
氣泡排序 python描述
原文 氣泡排序,有時也稱為下沉排序,是一種簡單的排序演算法,它反覆遍歷要排序的列表,比較沒對相鄰的專案,如果它們的順序不滿足條件則交換它們。重複遍歷列表,知道不需要交換,這時列表就是已排序的。其核心思想是 兩兩比較相鄰記錄的關鍵字,如果反序則交換,直到沒有反序記錄為止。比較相鄰的元素。如果第乙個比第...
氣泡排序(線性描述)
氣泡排序 線性描述 快速排序 線性描述 建設中 總結 這是排序演算法家族中最簡單的演算法,自信的面對他吧。讓我們開始吧 氣泡排序的原理即為遍歷整個陣列,每當遇到後乙個數比前乙個數字更小的情況便交換兩者的值。由此看來最壞的情況便是類似a 6 的情況。我們來分析一下執行過程。首先發現5 6,交換,a 6...
簡明演算法 氣泡排序 javascript描述
懶惰了很久,人有點生鏽,所以寫個演算法系列讓自己腦筋活躍起來。所有範例一律從小到大排序 氣泡排序 給定陣列 var list 54,26,93,17,77,31,44,88,55,20 演算法描述 將第乙個元素與第二個元素對比,此時第乙個元素比第二個元素大,交換他們,這樣較大的元素就位於第二個位置了...