国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

Python基礎練習實例36(選擇排序)

極客小將2020-11-08-
選擇排序原理,將要排序的數據元素選出最?。ù螅?,將他和數據元素的首位交換位置。再次從剩下的數據元素中找到最小(大)的元素,然后與數據元素的第二位子交換。。。直到將整個數據元素排序。

題目:對10個數利用選擇法進行排序。

簡單選擇排序的基本思想:第1趟,在待排序記錄r[1]~r[n]中選出最小的記錄,將它與r[1]交換;第2趟,在待排序記錄r[2]~r[n]中選出最小的記錄,將它與r[2]交換;以此類推,第i趟在待排序記錄r[i]~r[n]中選出最小的記錄,將它與r[i]交換,使有序序列不斷增長直到全部排序完畢。

以下為簡單選擇排序的存儲狀態,其中大括號內為無序區,大括號外為有序序列:

初始序列:{49 27 65 97 76 12 38}

  第1趟:12與49交換:12{27 65 97 76 49 38}

  第2趟:27不動 :12 27{65 97 76 49 38}

  第3趟:65與38交換:12 27 38{97 76 49 65}

  第4趟:97與49交換:12 27 38 49{76 97 65}

  第5趟:76與65交換:12 27 38 49 65{97 76}

  第6趟:97與76交換:12 27 38 49 65 76 97 完成

程序示例:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

s = [3, 4, 1, 6, 2, 9, 7, 0, 8, 5]

for i in range(0, len(s) - 1):

   #記錄最小位置

   index = i

   #篩選最小數

   for j in range(i + 1, len(s)):

       if s[index] > s[j]:

           index = j

   #交換位置

   s[i], s[index] = s[index], s[i]

# 輸出排序后的結果

for m in range(0, len(s)):

   print(s[m])




輸出結果:

Python基礎練習實例36(選擇排序)

本站部分內容轉載自網絡,如有侵權請聯系管理員及時刪除。

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 康马县| 顺平县| 肇庆市| 融水| 商河县| 姜堰市| 成都市| 泽普县| 黎平县| 陇川县| 嘉兴市| 乌兰察布市| 商水县| 驻马店市| 桑植县| 南靖县| 天柱县| 开原市| 莒南县| 甘孜县| 彭阳县| 勃利县| 巴彦县| 丽水市| 准格尔旗| 防城港市| 湘潭县| 瓦房店市| 金坛市| 伽师县| 衡山县| 锡林郭勒盟| 通河县| 黑龙江省| 辽源市| 织金县| 黑山县| 抚州市| 安溪县| 宝丰县| 安仁县|