即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

排序算法之选择排序

编程语言 m0_37968915 9℃ 0评论

排序的算法有不少,先来说说选择排序

选择排序,看这个名字就知道这种排序方法一定与选择有关,当有一个数组存在时,并且这个数组就是需要我们进行排序的数组,例如定义了一个整形数组array[10] = {2,1,4,8,7,14,23,3,25,23};这里谈论一下选择排序如何对该数组进行升序排序:

第一轮遍历该数组的时候找到里面最小的一个元素下标我们假设为min_index,然后将找到的这个min_index放到数组的第一个位置,然后进行第二轮遍历,寻找第二小的元素下标赋值给min_index,然后放在数组的第二个位置,这样循环往复,直到最后一次数组已经排序完毕,就不用再循环了。

根据上面的分析写出代码如下:







下面进行一些简单的分析:

1、这种排序的方法也可以叫做比较排序,因为是通过数之间的比较从而进行排序的。

2、选择排序是一种不稳定的排序,比如需要排序的一组数种有两个相同的数,那么选择排序就会交换它们的位置,所以是不稳定的排序方法。

3、选择排序的时间复杂度为O(n^2);比较次数永远是n(n-1)/2次。

转载请注明:CodingBlog » 排序算法之选择排序

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情