数据结构:笔记-排序

1.归并排序
链接:
https://www.cnblogs.com/chengxiao/p/6194356.html

归并排序是稳定排序,它也是一种十分高效的排序,能利用完全二叉树特性的排序一般性能都不会太差。java中Arrays.sort()采用了一种名为TimSort的排序算法,就是归并排序的优化版本。从上文的图中可看出,每次合并操作的平均时间复杂度为O(n),而完全二叉树的深度为|log2n|。总的平均时间复杂度为O(nlogn)。而且,归并排序的最好,最坏,平均时间复杂度均为O(nlogn)。

2.简单排序
https://www.cnblogs.com/yfsmooth/p/4718151.html

简单排序分为:
选择排序
选择排序的时间复杂度为O(n^2),如果n较大,则效率会非常低。
冒泡排序
冒泡排序的时间复杂度为O(n^2),

双向冒泡排序:
插入排序:
直接插入排序最好的时间复杂度为O(n),平均时间复杂度为O(n^2)。同样的,如果n过于大的时候,直接插入排序的效率会很低。

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读