冒泡排序的思想:壹次比較兩個相鄰的元素,如果順序不對就交換。
比如有五個數字:12,35,99,18,76,從大到小排序,比較相鄰兩位數。
第壹次旅行:
第壹次比較:35,12,99,18,76
第二次比較:35,99,12,18,76。
第三個對比:35,99,18,12,76。
第四個對比:35,99,18,76,12。
第壹次比較後,五個數中最小的已經在後面了,然後只比較前四個數,以此類推。
第二次旅行
99, 35, 76, 18, 12
第三次旅行
99, 76, 35, 18, 12
第四次旅行
99, 76, 35, 18, 12
比較完成
冒泡排序原理:每次只能重置壹個數字。如果有n個數字要排序,那麽只需要復位n-1個數字,也就是說要進行n-1遍(復位的數字不需要比較)。
#!/usr/bin/env python # coding:utf-8 def bubble sort(nums):
對於I in range (len (nums)-1): #這個循環負責設置執行冒泡排序的次數。
對於範圍內的j(len(nums)-I-1):?# j是列表下標。
if nums[j]& gt;nums[j+1]:
nums[j],nums[j+1]= nums[j+1],nums[j]返回nums
nums = [5,2,45,6,8,2,1]打印氣泡排序(nums)
缺點:氣泡分揀解決了桶式分揀浪費空間的問題,但是氣泡分揀效率特別低。