【发布时间】:2019-02-04 23:00:53
【问题描述】:
我有一个 N 个元素的排序数组,它们平均分布在 K 个列表中,该列表也已排序。以下情况的时间复杂度(以最严格的 Big-O 表示法)是多少:
- 删除最小的元素。
- 删除最小元素后重新排序数组。
- 删除所有 N 个元素
对于第一部分,我认为答案是O(1),因为最小的元素是第一个元素。但它所在的列表不一定是第一个列表,所以我不确定。
对于第二部分,我不确定(可能是O(NK)?)
对于第三部分,它必须是 O(N),因为我们要遍历整个数组,但我再次不确定
【问题讨论】:
-
老实说,这听起来像是一个 comp sci 作业问题。没关系,但您可能会在 cs.se 上找到更好的答案。
-
"但它所属的列表不一定是第一个列表" - 为什么不呢?
-
我的意思是它可以是第一个列表,但它不是必须是第一个列表
标签: arrays time-complexity heap theory