Python 簡單選擇排序

2021-09-01 18:10:05 字數 853 閱讀 5705

這種排序就是在要選取的列表中選取最小的值,把最小的值放到序列的第一位,再進行將剩餘的值重複上述操作,直到剩餘序列為0。序列就是乙個有序的序列了。

分析:現有一組序列,我們把它放入列表中

a = [10, 2, 5, 1, 3, 7, 3]

1.使用迴圈改變每一次的待排序序列從哪一位開始,從下標0開始到len(a)-1

2.在迴圈找出待排序序列的最小值——巢狀迴圈

3.最小值與待排序序列的第一位元素交換

4.重複操作,遍歷結果為有序序列

def select_sort(a):

l = len(a)

for j in range(0, l - 1):

count = j # 先將第乙個元素的下標,定為最小元素下標

# 使用迴圈,每次找出最小元素

for i in range(j, l - 1):

if a[count] > a[i + 1]: # 如果下乙個數值小於當前最小元素,則最小元素下標發生變化

count = i + 1

# 交換最小元素和待排序元素中最前乙個

a[j], a[count] = a[count], a[j]

print("排序後:",a)

if __name__ == "__main__":

a = [10, 2, 5, 1, 3, 7, 3]

print("排序前:",a)

select_sort(a)

輸出結果:

排序前: [10, 2, 5, 1, 3, 7, 3]

排序後: [1, 2, 3, 3, 5, 7, 10]

簡單選擇排序 python

原理 每一趟從待排序的元素中選出最小 最大 的元素,順序放在待排序的序列中最前,直到全部元素排序完成 假設初始為 7,3,8,5,6,1,9,4,2 第一趟排序後 1,7,3,8,5,6,9,4,2 第二趟排序後 1,2,7,3,8,5,6,9,4 第三趟排序後 1,2,3,7,8,5,6,9,4 ...

Python 簡單選擇排序

總結 解析版 nums list range 10 生成0 9的十個數 import random 匯入模組 random.shuffle nums 匯入shuffle隨機生成樹模組,將該列表隨機打亂 print nums 列印出隨機打亂列表後的效果 length len nums 計算長度 cou...

排序 簡單選擇排序 Python

每一輪迴圈中,找到待排序列中的最小值,將其和待排序列頭元素交換,最終達到有序 對序列 2,4,1,3,6,5 按公升序排列 2,4,1,3,6,5 1,4,2,3,6,5 1,2,4,3,6,5 1,2,3,4,6,5 1,2,3,4,6,5 1,2,3,4,5,6 class solution p...