数据结构及算法

简单选择排序就是简单~~~

2021-05-12  本文已影响0人  Code综艺圈

前言

前面几篇分享了插入排序和交换排序,接下来说说选择排序~~~

选择排序(Selection sort):每一趟在待排序元素中选取元素值最小(或最大)的元素加入有序子序列。即在一堆数据中,每次挑出最小的或最大的放入其他有序序列中,当选择完所有待排序数据时,排序就完成了。

选择排序有两种:简单选择排序和堆排序;接下来就从简单的开始,先来说说简单选择排序。

正文

1.1 简单选择排序算法思想

简单选择排序很直观,直接从待排序列表中找出最小(或最大)的元素放到有序序列中,直到待排序列表中的元素被选择完为止。

算法思想

1.2简单选择排序算法实现与解析

1.3 简单选择排序算法分析

综上所述,简单选择排序的时间复杂度为O(n2),空间复杂度为O(1),是不稳定算法。

总结

看完简单选择排序,小伙伴会觉得和直接插入排序很像,但是他们有一个很大区别,简单选择排序是将已经得到的最小(或最大)元素依次放入到有序序列中,而直接插入排序是在从待排序列表中直接取出一个元素,然后在和原来有序列表中元素进行比较,找到对应位置,然后插入到对应位置

对比以往排序算法的经验,简单选择排序算法的元素比较次数还是可以优化的,所以下一次来说说比较难搞的堆排序

一个被程序搞丑的帅小伙,关注"Code综艺圈",跟我一起学~~~

上一篇下一篇

猜你喜欢

热点阅读