1、每一轮交换都可以排定一个元素,交换次数是固定的。
2、运行时间与输入无关,已有序、所有元素相等、元素随机排列的数组,所用的排序时间相同。
3、数据移动最少。
实例
defswap(nums,idx1,idx2): ifidx1==idx2: return temp=nums[idx1] nums[idx1]=nums[idx2] nums[idx2]=temp defselect_sort(nums): """ 选择排序,记录最小元素的索引,最后才交换位置 :paramnums: :return: """ l=len(nums) foriinrange(l): min_index=i forjinrange(i+1,l): ifnums[j]<nums[min_index]: min_index=j swap(nums,i,min_index)
以上就是python选择排序算法的特点,希望对大家有所帮助。更多Python学习指路:Python基础教程