排序0s 1s&的数组2s with o(1)

时间:2014-10-16 12:21:44

标签: java sorting

我们可以对0s 1s&的数组进行排序吗? 2s,复杂度为O(1)。

{0,1,2,0,1,2,0,1,2,2,1,0,1,1,2,2,0,0}

1 个答案:

答案 0 :(得分:0)

您不能仅仅因为排序算法总是依赖于n而在O(1)中对整个数组进行排序。

请参阅Wikipedia关于排序算法计算时间的这句话:

  

元素比较的计算复杂性(最差,平均和最佳行为)   列表的大小(n)。对于典型的串行排序算法很好   行为是O(n log n),并行排序为O(log2 n),不好   行为是O(n2)。 (参见Big O表示法。)串行的理想行为   sort是O(n),但在平均情况下这是不可能的,是最优的   并行排序是O(log n)。基于比较的排序算法,   它通过抽象键比较来评估列表的元素   操作,大多数输入至少需要O(n log n)比较。