python氣泡排序

2021-09-13 22:01:25 字數 704 閱讀 1828

了解資料結構與演算法是程式設計師的基本功之一,儘管工作中可能永遠都用不上,但每一行**都滲透著資料結構與演算法的思想。

1、迴圈比較相鄰的兩個元素,大的向後移動,這樣一次迴圈之後最大的值就放在了最後;

2、再次進行迴圈,將次大的數放在倒數第二位;

3、重複第二步,直至剩餘乙個資料。

第一層迴圈,迴圈到當前最大的那個元素的下標

第二層迴圈,反覆比較相鄰的兩個元素,直至到達最大元素的下標

// 氣泡排序演算法

defbubblesort

(num)

:for length in

range

(len

(num)-1

,0,-

1):# length 每次遍歷需要到達的下標,每次減少乙個

for i in

range

(length)

:if num[i]

> num[i+1]

: num[i]

, num[i+1]

= num[i+1]

, num[i]

num =[54

,26,93

,17,77

,31,44

,55,20

]bubblesort(num)

print

(num)

排序 氣泡排序 Python

依次比較相鄰兩元素的大小,順序與要求的不一致就交換。這樣會把待排序序列中的最大 最小 元素不斷 浮 到最右端,最終完成公升序或降序排列。對序列 2,4,1,3,6,5 按公升序排列 只記錄有交換發生的迴圈 第一次迴圈 2,4,1,3,6,5 2,1,4,3,6,5 2,1,3,4,6,5 2,1,3...

Python排序 氣泡排序

排序 氣泡排序 氣泡排序演算法的原理如下 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需...

Python氣泡排序

需求 對於一串不知道個數的無序數進行從大到小或從小到大排序。氣泡排序 思想 首先第乙個數與第二個數做比較,大者放後面作為新的第二個數,然後,第二個數再與第三個數作比較,大者放後面作為新的第三個數,以此類推,相鄰兩位置數比較大小,若前者大於後者,則交換位置,這樣遍歷完一次資料就把最大數放在了最後面,即...