您好,登錄后才能下訂單哦!
小編給大家分享一下python選擇排序算法是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
在列表list模塊中,已有排序操作方法的實現:
lst = [2,9,5,4,8,1,6] lst.sort() print(lst) # output:[1, 2, 4, 5, 6, 8, 9]
如果要自定義實現這一方法呢?
排序一個序列,通常會用到雙重(嵌套)循環(雙重循環在二維列表、矩陣、行列式中使用比較普通)。
使用雙重循環處理一個序列的排序,通常內循環搞定一個元素的位置,外循環搞定一個序列的全部。
排序的方法有很多種,效率及代碼難易方面各有千秋。
關于選擇排序:
先用一個簡單的實例用手動的方式模擬一下實際的操作過程,然后用代碼實現一般化。
如數列lst = [2,9,5,4,8,1,6],選擇排序操作(升序)如下:
可以描述為:
for i in range(len(lst)-1): .....select the smallest element in lst[i : len(lst)] ....swap the smallest with lst[i], if necessary # lst[i] is in its correct position # the next iteration applies to lst[i+1 : len(lst)]
代碼:
output:
[2, 9, 5, 4, 8, 1, 6] [1, 9, 5, 4, 8, 2, 6] [1, 2, 5, 4, 8, 9, 6] [1, 2, 4, 5, 8, 9, 6] [1, 2, 4, 5, 8, 9, 6] [1, 2, 4, 5, 6, 9, 8] [1, 2, 4, 5, 6, 8, 9]
看完了這篇文章,相信你對python選擇排序算法是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。