您好,登錄后才能下訂單哦!
Selection sort 選擇排序
1、簡單直觀
2、數組中,找到最小的值,和第一個元素交換(如果第一個元素就是最小元素那么就和自己交換)。再次,在剩下的元素中找到最小的元素,將它與數組的第二個元素交換位置。依次類推。
下面來看一下偽代碼
selectionSort(mylist){
for(i=0;i<len(mylist);i++){
min=i;
for(j=i+1;j<len(mylist);j++){
if(mylist[min]>mylist[j]){
//如果mylist[min]的值大于mylist[j]的值 ,則交換min和j
min=j
}
}
//內循環完成,交換
temp = mylist[i];
mylist[i] = mylist[min];
mylist[min] = temp
}
}
#!/usr/bin/env python # -*- coding:utf-8 -*- def selection(mylist): for i in range(0, len(mylist)): min = i for j in range(i + 1, len(mylist)): if mylist[j] < mylist[min]: min = j mylist[i], mylist[min] = mylist[min], mylist[i] return mylist a = [10, 2, 3, 1, 23, 14, 25, 68, 72, 81, 33, 56, 98, 102, 77, 56, 7, 4, 5] print(selection(a))
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。