算法之--快速排序
选择排序:
它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零
以下图片来自知乎 忆臻 https://zhuanlan.zhihu.com/p/29889599
我自己理解,上代码先
def Select_Sort(li): for i in range(len(li)-1):#遍历的次数.i是第几趟 #假设第一个数是最小的一个值,我们使用变量min_number表示,认为是无需去到 min_number=i #无序区 for j in range(i+1,len(li)): if li[j]
执行效果:
执行路径:(执行思路)
1.假设我们第一个坐标它的值就是最小的值(也就是min_number)
2.每次就对比第二个坐标值是否比我设置的无序列的值更小,如果比设置的值还小,就把无序列中的最小的值进行交换,如果比较大不交换
3.对比第三个值,如果比无序列中min_number更小,就进行交换,基于这样的原理,所以第一趟就会找到第一个最小的值,第二趟找到第二个最小的值