algorithm - 计数排序 O(n+k) 时间复杂度中的 k 是多少?

标签 algorithm sorting counting

计数排序的最差、最佳和平均时间复杂度是O(n+k) ,其中 n 是要排序的元素数。 k 到底是什么? 我看到了不同的定义:最大元素、最大元素和最小元素之间的差异,等等。

  1. 给定数组 arr1 [1, 3, 5, 9, 12, 7 ]arr2 [1,2,3,2,1,2,4,1,3,2] 什么是 k对于 arr1arr2
  2. 排序arr1是真的愚蠢吗?用计数排序因为 n < k (元素值的范围大于 要排序的元素?

最佳答案

k 是数组中的最大可能值,假设您有长度为 5 的数组,其中每个数字都是 0 到 9 之间的整数,在本例中 k 等于 9

关于algorithm - 计数排序 O(n+k) 时间复杂度中的 k 是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45489527/

相关文章:

c# - 形状上的均匀分布算法

algorithm - 如何比较两种颜色的相似性/差异性

matlab - 如何计算实际评论的行数?

algorithm - 如何为饼图选择调色板?

algorithm - 有人可以解释递归插入排序是如何工作的吗?

c# - 使用 Entity Framework 的规范模式(按属性排序)

ruby - 如何使用 Ruby 计算数组中唯一绝对值的数量?

java - 排序方法运行时崩溃

algorithm - 同一对角线上的元素列表

matlab - 如何计算矩阵中每列值的数量