Python 實現(xiàn)選擇排序的算法步驟
選擇排序算法步驟:
找到數(shù)組中最小的那個元素中,
將它和數(shù)組的第一個元素交換位置,
在剩下的元素中找到最小的元素,將它和數(shù)組的第二個元素交換位置,
如此往復,知道將整個數(shù)組排序。
逐步分析:
假設一個數(shù)組有 6 個元素,
[5, 1, 4, 3, 2, 6]
第 1 個元素為 5,與剩余 5 個元素相比,1 是最小的元素,所以 5 和 1 交換位置,
[1, 5, 4, 3, 2, 6]
第 2 個元素為 5,與剩余 4 個元素相比, 2 是最小的元素,所以 5 和 2 交換位置,
[1, 2, 4, 3, 5, 6]
第 3 個元素為 4,與剩余 3 個元素相比, 3 是最小的元素,所以 4 和 3 交換位置,
[1, 2, 3, 4, 5, 6]
不斷重復直到排好序。
def select_sort(arr): # 索引從 0 到 n-2 for i in range(len(arr) - 1): # 最小元素的索引 min = i # min 與從 i+1 到 n 的元素比較 j = i + 1 while j < len(arr): if arr[min] > arr[j]: # 找到最小的元素 min = j j += 1 # 交換位置 arr[i], arr[min] = arr[min], arr[i] a = [5, 1, 4, 3, 2, 6] select_sort(a) print(a)
總結
以上所述是小編給大家介紹的Python 實現(xiàn)選擇排序的算法步驟,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
python polars數(shù)據(jù)科學庫對比Pandas優(yōu)勢分析
這篇文章主要為大家介紹了python polars數(shù)據(jù)科學庫對比Pandas優(yōu)勢分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01談一談數(shù)組拼接tf.concat()和np.concatenate()的區(qū)別
今天小編就為大家分享一篇談談數(shù)組拼接tf.concat()和np.concatenate()的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python神器之使用watchdog監(jiān)控文件變化
這篇文章主要為大家詳細介紹了Python中的神器watchdog以及如何使用watchdog監(jiān)控文件變化,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下2023-12-12