算法——选择排序

作者: LuDSh | 来源:发表于2017-09-15 10:58 被阅读134次

很多的算法的基本条件都是对有序数据进行操作,最简单的例子就是昨天讲到的二分查找。在实际生活中,并不是所有的数据都是有序的,很多数据需要我们先进行排序再进行下一步的操作。

今天要说的是选择排序selectionSort。

选择排序简单说就是,每次比较所有的元素,选出最大或者最小的元素。

打个比方,0-9共有10个元素,你想要确定最小的元素是谁,怎么做呢?你需要用把所有的元素看一遍,选出最小的,次数为10;如何找第二小的元素呢?再次遍历,次数为9,依次876......总的运行次数就是1/2*(n+1)n但是为什么查资料看到的时间复杂度都是O(n^2)呢?这是因为O表示法通常省略常数。

不知道关于选择排序说清楚了没有,没有的话看具体的代码实现,我分别作了降序和升序的实现,如下。

相关文章

网友评论

    本文标题:算法——选择排序

    本文链接:https://www.haomeiwen.com/subject/tylssxtx.html