Selection sort 选择排序
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/envpython#-*-coding:utf-8-*-defselection(mylist):foriinrange(0,len(mylist)):min=iforjinrange(i+1,len(mylist)):ifmylist[j]<mylist[min]:min=jmylist[i],mylist[min]=mylist[min],mylist[i]returnmylista=[10,2,3,1,23,14,25,68,72,81,33,56,98,102,77,56,7,4,5]print(selection(a))
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。