十大排序算法之二:选择排序(Python)
2019-05-15 本文已影响0人
李蕴Ronnie
选择排序
1.算法步骤
1.1首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置;
1.2再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾;
1.3重复第二步,知道所有元素均排序完毕。
2.Python代码实现:
def selection_sort(l):
n = len(l)
i = 0
while i < n:
min_index = i
for k in range(i, n):
if l[min_index] > l[k]:
min_index = k
l[i], l[min_index] = l[min_index], l[i]
i += 1
return l
l = [6, 3, 5, 9, 9, 12, 7]
print(selection_sort(l))
返回
[3, 5, 6, 7, 9, 9, 12]