选择排序是一种灵巧的算法,但是它的速度不是很快。
# encoding: utf-8
#定义函数用于找出数组中的最小元素
def findSmallest(arr):
#用smallest存储最小的值
smallest=arr[0]
#用smallest_index存储最小元素的索引
smallest_index=0
for i in range(1,len(arr)):
if arr[i]<smallest:
smallest=arr[i]
smallest_index=i
return smallest_index
#定义函数用于编写选择排序算法
def selectionSort(arr):
newArr=[]
for i in range(len(arr)):
smallest=findSmallest(arr)
newArr.append(arr.pop(smallest))
return newArr
if __name__ == "__main__":
my_list=[5,3,6,2,10]
result=selectionSort(my_list)
print(result)
#运行结果
[2, 3, 5, 6, 10]
网友评论