-1

我知道中位数算法的中位数公式是: T(n)<= T(0.7n)+T(0.2n)+O(n)并且O(n)来自于找到每个块的中位数(大小为 5),我想知道为什么需要 O(n) 才能找到每个块的中位数.. 听起来像找到一个块的中位数需要O(1). 这怎么可能?

4

1 回答 1

0

每个块的大小是恒定的 ( 5)。因此,找到每个块的中位数在O(1)(将块排序O(1)并以中间索引作为中位数)。因此,找到所有块的中位数在O(n). 然后找到在您的另一个问题中回答的每个块的中位数的中位数。

于 2018-10-15T10:03:32.390 回答