具有二次和线性运行时间的排序算法

Sorting algorithm with quadratic and linear runtime

是否可以做一个排序算法

最坏情况下的 运行ning 时间是二次方的 => n^2

但在大多数情况下

(即在超过一半的n尺寸输入上)

运行 时间将是线性的 => n ??

我在考虑基数排序,只是把最坏的情况变得更糟

但是不知道可不可以

是的,有可能。

桶排序 analysis 确实揭示了这种行为(具有合理数量的桶)。

是的,桶排序

https://www.geeksforgeeks.org/bucket-sort-2/?ref=lbp

你可以参考link

中的算法

在最坏的情况下,我们可以有一个包含所有 n 个值的桶 大批。因为插入排序有最坏情况 运行 时间 O(n^2),Bucket 也是 种类。我们可以通过使用合并排序来对每个桶进行排序来避免这种情况,这 最坏情况 运行 时间 O(n lg n).