【十大排序算法】

末蓝、 2022-05-16 00:24 303阅读 0赞

1.非线性时间类排序(时间复杂度未突破$ 0(nlog_2n)$)

不稳定的四个排序算法

选择排序: 0(n2)
希尔排序: 0(n1.3)希尔排序实现python
快速排序: 0 ( n l o g 2 n ) 0(nlog_2n) 0(nlog2​n) 快速排序实现C++&python
堆排序: 0 ( n l o g 2 n ) 0(nlog_2n) 0(nlog2​n) Python实现堆排序

稳定的三个排序算法

插入排序: 0(n2)插入排序实现C++&python
冒泡排序:0(n2) 冒泡排序实现C++&python
归并排序:$ 0(nlog_2n)$归并排序实现python

所谓稳定和不稳定

稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。
不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。


2.线性时间类排序

桶排序:$ 0(n+k)$
计数排序:$ 0(n+k)$
基数排序:$ 0(n+k)$

发表评论

表情:
评论列表 (有 0 条评论,303人围观)

还没有评论,来说两句吧...

相关阅读

    相关 经典排序算法

    0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称

    相关 经典排序算法

    一、算法的分类 1、概念 将杂乱无章的数据元素,通过一定的方法按关键字顺序排列的过程叫做排序。 2、分类 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于

    相关 排序算法总结

    0、开场 排序算法分为外部排序和内部排序。内部排序是指数据记录在内存中进行排序,而外部排序是排序的数据量很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的