来都来了,你确定不看看常用的选择排序算法< 二 >!(python版本 图文并茂!!!!)

Posted 温柔且上进c

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了来都来了,你确定不看看常用的选择排序算法< 二 >!(python版本 图文并茂!!!!)相关的知识,希望对你有一定的参考价值。

选择排序算法

概念:

       •选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕
       •选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种排序方法

图片演示:

       •红色表示当前最小值,黄色表示已排序序列,蓝色表示当前位置

算法实现:

li = [54, 26, 93, 17, 77, 31, 44, 55, 20]


def select_sort(li):
    n = len(li)
    for i in range(n - 1):
        min_index = i
        for j in range(min_index, n):
            if li[j] < li[min_index]:
                min_index = j

        li[i], li[min_index] = li[min_index], li[i]


if __name__ == '__main__':
    select_sort(li)
    print(li)

# 排序结果: [17, 20, 26, 31, 44, 54, 55, 77, 93]

以上是关于来都来了,你确定不看看常用的选择排序算法< 二 >!(python版本 图文并茂!!!!)的主要内容,如果未能解决你的问题,请参考以下文章

来都来了,你确定不看看常用的希尔排序算法< 四 >!(python版本 图文并茂!!!!)

来都来了,你确定不看看常用的插入排序算法< 三 >!(python版本 图文并茂!!!!)

来都来了,你确定不看看,阿里云Centos8安装Docker!!(图文并茂版!!!)

来都来了,你确定不看看,Git从零开始的详细使用教程,你一定能学废!!(万字长文图文并茂版!!!!)

来都来了,你确定不看看,在linux CentOS8下安装redis,你一定能学废!!!(图文并茂版!!!)

来都来了,你确定不看看,使用python中的科学计算库Numpy操作数组,你一定能学废!!(图文并茂版!!!!)