b029: Ch5-01b 實作氣泡排序演算法(雙迴圈)
Tags : Python
Accepted rate : 1人/1人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2022-11-16 08:41

Content

實作氣泡排序法還有一個常見的手法是利用「雙迴圈」來實作。外層迴圈用來處理「回合數」,內層迴層則用來處理「相鄰兩數交換」。

data = [4, 1, 3, 5, 2]
data_count = len(data)
for i in range(data_count-1):
    for j in range(data_count-1-i):
         if data[j] > data[j+1]:
             temp = data[j]
             data[j] = data[j+1]
             data[j+1] = temp
    print('第',i,'回合結果:',data)
print('排序結束')

Input
Output
Sample Input #1


											
										
Sample Output #1
第 0 回合結果: [1, 3, 4, 2, 5]
第 1 回合結果: [1, 3, 2, 4, 5]
第 2 回合結果: [1, 2, 3, 4, 5]
第 3 回合結果: [1, 2, 3, 4, 5]
排序結束
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (100%): 1.0s , <1K
Hint :
Tags:
Python
出處:
育達高中資訊科技 [管理者: zero(育達管理員) ]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」