关于算法我们已经讲了很多,但是大部分的朋友都希望对一个单一的算法进行拆分讲解,这样可以对算法有更深的印象。那么,本期我们就为大家讲解一下选择排序算法。
~感兴趣的小伙伴一起来看下吧~
在列表
list模块中,已有排序操作方法的实现:
lst = [2,9,5,4,8,1,6]
lst.sort()
print(lst) # output:[1, 2, 4, 5, 6, 8, 9]
如果要自定义实现这一方法呢?
为了对序列进行排序,通常使用双(嵌套)循环(双循环在二维列表、矩阵和行列式中更为常见)。
使用双循环对一个序列进行排序,通常内循环处理一个元素的位置,外循环处理一个序列的所有
。
排序方法有很多种,在效率和代码难度上各有优缺点。
关于选择排序:
先用一个简单的例子,手动模拟实际操作过程,再用代码实现泛化。
如数列
lst = [2,9,5,4,8,1,6],选择排序操作(升序)如下:
可以描述为:
for i in range(len(lst)-1):
.....select the smallest element in lst[i : len(lst)]
....swap the smallest with lst[i], if necessary
# lst[i] is in its correct position
# the next iteration applies to lst[i+1 : len(lst)]
代码:
output:
[2, 9, 5, 4, 8, 1, 6]
[1, 9, 5, 4, 8, 2, 6]
[1, 2, 5, 4, 8, 9, 6]
[1, 2, 4, 5, 8, 9, 6]
[1, 2, 4, 5, 8, 9, 6]
[1, 2, 4, 5, 6, 9, 8]
[1, 2, 4, 5, 6, 8, 9]
关于选择排序内容并不难哦
~一串代码就可以演示完成了,小伙伴们浏览几遍即可了解哦~如果还想知道更多的python知识,可以到
进行查询。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 教你如何用Python处理Excel表格09/11
- ♥ python web框架可以实现的功能01/09
- ♥ 如何在python中绘制样本散点图?11/02
- ♥ 如何解决python中的结束提示错误?10/23
- ♥ 图解 Python 中深浅拷贝(copy)02/08
- ♥ python plot()函数基本介绍09/12
内容反馈