国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python排序算法之選擇排序定義與用法示例

2020-02-22 23:57:00
字體:
來源:轉載
供稿:網友

本文實例講述了Python排序算法之選擇排序定義與用法。分享給大家供大家參考,具體如下:

選擇排序

選擇排序比較好理解,好像是在一堆大小不一的球中進行選擇(以從小到大,先選最小球為例):

1. 選擇一個基準球

2. 將基準球和余下的球進行一一比較,如果比基準球小,則進行交換

3. 第一輪過后獲得最小的球

4. 在挑一個基準球,執行相同的動作得到次小的球

5. 繼續執行4,直到排序好

時間復雜度:O(n^2).  需要進行的比較次數為第一輪 n-1,n-2....1, 總的比較次數為 n*(n-1)/2

直接上代碼:

def selectedSort(myList):  #獲取list的長度  length = len(myList)  #一共進行多少輪比較  for i in range(0,length-1):    #默認設置最小值得index為當前值    smallest = i    #用當先最小index的值分別與后面的值進行比較,以便獲取最小index    for j in range(i+1,length):      #如果找到比當前值小的index,則進行兩值交換      if myList[j]<myList[smallest]:        tmp = myList[j]        myList[j] = myList[smallest]        myList[smallest]=tmp    #打印每一輪比較好的列表    print("Round ",i,": ",myList)myList = [1,4,5,0,6]print("Selected Sort: ")selectedSort(myList)

執行結果:

PS:這里再為大家推薦一款關于排序的演示工具供大家參考:

在線動畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python列表(list)操作技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江达县| 侯马市| 莱芜市| 延津县| 鲁山县| 武乡县| 四子王旗| 文昌市| 宁阳县| 潜江市| 类乌齐县| 灵山县| 巧家县| 自贡市| 尉犁县| 花垣县| 清徐县| 石柱| 大兴区| 德保县| 丁青县| 怀安县| 许昌市| 称多县| 林西县| 台州市| 横峰县| 揭东县| 甘孜| 皮山县| 米脂县| 琼结县| 宁阳县| 桃园县| 兴仁县| 珲春市| 金昌市| 宁南县| 油尖旺区| 福泉市| 文山县|