選擇排序簡單示例

2021-09-28 17:18:43 字數 684 閱讀 8499

從一組陣列中排出從小到大的順序,思路是每次找出最小的數值,把他放到新的列表中,然後再在剩下的陣列中尋找最小的數值,再把這個數值放到新的列表中,執行n次。迴圈中巢狀迴圈

def findmin(arr):

min = arr[0]

min_number = 0

#先取乙個陣列中的值,定義索引為0

for i in range(1,len(arr)):

#因為取了索引0,所以從1開始比較

if arr[i] < min:

min = arr[i]

min_number = i

return min_number

#歷遍整個陣列返回最小的值的索引

def addmins(arr):

addmin =

#建立乙個空列表來儲存值

for i in range(len(arr)):

number = findmin(arr)

#迴圈陣列總索引的次數,將最小值依次儲存在列表中,並且在下次迴圈前把最小的數刪除,再來尋找剩下陣列中最小的值(方法pop)

return addmin

print(addmins([1,5,7,94,4,9,4]))

選擇排序 簡單選擇排序

在要排序的一組數中,選出最小 或者最大 的乙個數與第1個位置的數交換 然後在剩下的數當中再找最小 或者最大 的與第2個位置的數交換,依次類推,直到第n 1個元素 倒數第二個數 和第n個元素 最後乙個數 比較為止。第一趟,從n個記錄中找出關鍵碼最小的記錄與第乙個記錄交換 第二趟,從第二個記錄開始的n ...

選擇排序 簡單選擇排序

1.選擇排序 簡單選擇排序,堆排序 與交換排序 氣泡排序,快速排序 的區別 每次比較如果發現較小的元素在後面,就交換兩個相鄰的元素。而選擇排序演算法的改進在於 先並不急於調換位置,先從a 1 開始逐個檢查,看哪個數最小就記下該數所在的位置p,等一躺掃瞄完畢,再把a p 和a 1 對調,這時a 1 到...

選擇排序 簡單選擇排序

在要排序的一組數中,選出最小 或者最大 的一 個數與第1個位置的數交換 然後在剩下的數當中再找最小 或者最大 的與第2個位置的數交換,依次類推,直到第n 1個元素 倒數第二個數 和第n個元素 最後 乙個數 比較為止。第一趟,從n 個記錄中找出關鍵碼最小的記錄與第乙個記錄交換 第二趟,從第二個記錄開始...