排序算法python版(2)-选择排序算法(python 排序算法)

网友投稿 322 2022-08-23


排序算法python版(2)-选择排序算法(python 排序算法)

代码如下:最坏的情况下

def select_sort(datas): for i in range(len(datas)): min_index=i for j in range(i+1,len(datas)): if datas[j]

执行结果如下:

经过第 1 次选择排序后的结果: [0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 10]经过第 2 次选择排序后的结果: [0, 1, 8, 7, 6, 5, 4, 3, 2, 9, 10]经过第 3 次选择排序后的结果: [0, 1, 2, 7, 6, 5, 4, 3, 8, 9, 10]经过第 4 次选择排序后的结果: [0, 1, 2, 3, 6, 5, 4, 7, 8, 9, 10]经过第 5 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 6 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 7 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 8 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 9 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 10 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 11 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

最好的情况下:

def select_sort(datas): for i in range(len(datas)): min_index=i for j in range(i+1,len(datas)): if datas[j]

执行结果如下:可以看出,即使已经有序了,选择排序仍然需要一次次去找最小的数,即在最好的情况系,时间复杂度仍然n2

经过第 1 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 2 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 3 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 4 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 5 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 6 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 7 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 8 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 9 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 10 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]经过第 11 次选择排序后的结果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot实现全局异常处理方法总结
下一篇:排序算法python版(1)-冒泡排序算法(冒泡排序算法Python)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~