排序(一):三大排序,选择,插入,冒泡

排序的三中古老的方法,选择排序,插入排序,冒泡排序。

一般来说,我们用得到的也就只有插入排序,选择排序和冒泡排序的用处不大,只适合作为开拓视野而用。

为什么这么说呢?

这就要从排序算法的分析说起了。

分析排序算法,从排序算法的执行效率,内存消耗和稳定性三方面入手

排序算法的执行效率,也从三个方面衡量:

1,最好情况,最坏情况,平均情况的时间复杂度

2,时间复杂度的系数,常数,低阶

其实这些在规模到了一定程度后是不能忽视的,

3,比较次数和交换次数


内存消耗,通过空间复杂度来衡量。有一个概念叫“原地排序”,就是特指空间复杂度为O(1)的算法,选择,插入,冒泡都是原地排序

稳定性,就是指排序过程中,相等元素之间原有的先后顺序不变。



冒泡排序和插入排序在上图额比较中是差不多的,但冒泡排序的时间复杂度比插入排序的要复杂的多,所以还是选择插入排序。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容