3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
氣泡排序法 - 使用Python (Bubble Sort)   插入排序法的原理是,從未排序的數列裡挑一個值(通常從最後一個開始),並將相鄰的值做比較,如數值大小與排序不符,則兩者對調,並繼續往下一個進行比較(這邊特別的是,如果大小順序是正確的,則會拿小的那一個值繼續往下比較),直到所有的值都比較且排序完成,下面直接用每個步驟氣泡排序法做的事情來讓大家瞭解。 原始數列 = [6, 5, 4, 3, 2, 1]  刷紫色是已排序的值,刷紅色是本次要比較的值。 第 1 次要排序的陣列  =  [6, 5, 4, 3, 2, 1],本次要比較的值 = 1   sourceBubbleSortList = [6, 5, 4, 3, 2, 1]   sourceBubbleSortList = [6, 5, 4, 3, 1, 2]   sourceBubbleSortList = [6, 5, 4, 1, 3, 2]   sourceBubbleSortList = [6, 5, 1, 4, 3, 2]   sourceBubbleSortList = [6, 1, 5, 4, 3, 2] 第 2 次要排序的陣列  =  [1, 6, 5, 4, 3, 2],本次要比較的值 = 2   sourceBubbleSortList = [1, 6, 5, 4, 3, 2]   sourceBubbleSortList = [1, 6, 5, 4, 2, 3]   sourceBubbleSortList = [1, 6, 5, 2, 4, 3]   sourceBubbleSortList = [1, 6, 2, 5, 4, 3] 第 3 次要排序的陣列  =  [1, 2, 6, 5, 4, 3],本次要比較的值 = 3   sourceBubbleSortList = [1, 2, 6, 5, 4, 3]   sourceBubbleSortList = [1, 2, 6, 5, 3, 4]   sourceBubbleSortList = [1, 2, 6, 3, 5, 4] 第 4 次要排序的陣列  =  [1, 2, 3, 6, 5, 4],本次要比較的值 = 4   sourceBubbleSortList = [1, 2, 3, 6, 5, 4]   sourceBubbleSortList = [1, 2, 3, 6, 4, 5] 第 5 次要排序的陣列  =  [1, 2, 3, 4, 6, 5],本次要比較的值 = 5   sourceBubbleSortList = [1, 2, 3, 4, 6, 5]   下面附上氣泡排序法的範例程式 -(使用Python撰寫) # Bubble Sort - Example 先準備一組測試數列 sampleList = [6, 5, 4, 3, 2, 1] def bubbleSortExample(sourceBubbleSortList):      # 找出數列長度      listLength = len(sourceBubbleSortList)      i = 0      # 這裡的 i 是計算還有幾個值未排序      while i < listLength-1:          j = listLength - 1          # 這邊控制的是,是哪兩個值要做比較          while j > i :              print(" sourceBubbleSortList = " + str(sourceBubbleSortList))              # 比較相鄰兩個數,若數值大小不同則交換,並逐一比較,直到相鄰的數值比完為止              if sourceBubbleSortList[j] < sourceBubbleSortList[j-1]:                  tempNum = sourceBubbleSortList[j]                  sourceBubbleSortList[j] = sourceBubbleSortList[j-1]                  sourceBubbleSortList[j-1] = tempNum              j = j - 1          i = i + 1      return sourceBubbleSortList   # 列印出結果 print(bubbleSortExample(sampleList))   如果覺得對你有幫助的話. 請幫小弟按個讚吧~ 資料結構相關文章:       資料結構 - Tree 的介紹       插入排序法 - 使用Python(Insertion Sort)       合併排序法 - 使用Python(Merge sort)

本文由newaurorapixnetnetblog提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦