选择排序算法:

1258817-20190325085919297-1818609484.gif


首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。重复第二步,直到所有元素均排序完毕。

scratch实现选择排序:

点我查看Scratch实现选择排序

python实现选择排序:

# 选择排序

def select_sort(arrlist:list):

    for i in range(len(arrlist)):

        # 把每一轮索引第一个作为最小值的索引

        min_index = i  

        for j in range(i,len(arrlist)):

             # 如果有比最小索引小的就更新最小索引的值

            if arrlist[j]<arrlist[min_index]:

                min_index = j

        # 经过一轮比较后把最小值和这一轮的第一个数交换

        arrlist[i],arrlist[min_index]=arrlist[min_index],arrlist[i] 

    return arrlist


print(select_sort([3,5,4,2,8,6,3,123,56,78,22]))





0 评论 最近

没有评论!