1、选择排序只需要一个变量作为交换,所以空间的复杂性是O(1),是原地排序算法。
2、在未排序范围内选择最小值,并与以前的元素交换。
对于相同值的元素,因为交换会破坏它们的相对公共汽车,所以它们是不稳定的排序算法。
例如,4、1、4、2、5,这样的序列,
第一次选择后如下:1、4、4、2、5.此时顺序不变,第二次选择后如下:1、2、4、4、5.需要交换第一个4和2,因此两个4的相对顺序发生了变化,因此选择排序是一种不稳定的排序算法。
无论数据的初始状态如何,排序的选择都需要在未排序元素中选择最小元素或元素来交换未排序列中的第一和最终元素,因此其最佳、最坏和平均时间复杂性是O(n^2)。
以上就是python选择排序算法的性能分析,希望对大家有所帮助。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。