还不懂基础排序算法的性能对比?这篇文章带你涨姿势

网友投稿 269 2022-09-02

还不懂基础排序算法的性能对比?这篇文章带你涨姿势

我们在这篇文章的主要任务如下:

冒泡排序

发现时间复杂度为O(n2)

插入排序:

考虑最坏的情况,就是数组最开始是逆序

上图中实际上是n*(n-1)/2,不过时间复杂度仍然是O(n2)

选择排序:

选择排序是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,继续放在起始位置知道未排序元素个数为0。

时间复杂度为O(n2)

在jdk中,我们可以直接调用Arrays.sort()来进行排序,这个排序算法实际上就是快速排序,时间复杂度为O(nlg n),远比O(n2)的复杂度要小得多,此间差距堪称天差地别。 所以平时我们平常做题,直接调用 Arrays.sort()就可以了/

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:手把手带你解析蓝桥云课《算法很美》--2.6递归经典问题:汉诺塔游戏
下一篇:操作系统实验报告 实验2 进程管理(答案全)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~