【发布时间】:2011-05-11 05:16:37
【问题描述】:
问题:输入是一个(不一定是排序的)序列 S = k1, k2, ..., kn,有 n 个任意数字。考虑形式为 min{ki,kj} 的 n² 个数的集合 C,其中 1 O(n)时间和O(n)空间算法求C的中位数。
到目前为止,我通过检查不同集合 S 的 C 发现,C 中 S 中最小数的实例数等于 (2n-1),下一个最小数:(2n-3) 等等直到你只有一个最大数量的实例。
有没有办法使用这些信息来找到 C 的中位数?
【问题讨论】: