如果不用sort()進行排序,而是手動進行排序的話應該如何編寫程序呢?
這就是經典冒泡排序法。
-------------------------------
nums=[5,1,7,6,8,2,4,3]
for j in range(0,len(nums)-1): # 輪數,如果有8個數字,需要7輪來完成排序。
for i in range(0,len(nums)-1-j): # 每輪比較的次數
if nums[i]>nums[i 1]: # 兩兩比較,如果nums[i]>nums[i 1],則兩數互換位置
a=nums[i] # 利用a進行數字互換
nums[i]=nums[i 1]
nums[i 1]=a
pass
pass
pass
print(nums)
示意圖如下:
冒泡排序法
第一輪得到所有數字中的最大值,排在列表的最右邊,以後每輪得到剩餘數的最大值從右往左依次排列。
冒泡排序主要是理解其中的運行機制。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!