【发布时间】:2015-06-23 10:24:51
【问题描述】:
给定一个由 n 个元素和一个数字 k 组成的排序数组,是否有可能在 log(n) 时间内找到出现超过 k 次的元素?如果有不止一个数字出现超过 k 次,那么其中任何一个都是可以接受的。
如果是,怎么做?
编辑: 我能够在线性时间内解决问题,我很高兴在此处发布该解决方案 - 但在 n 中解决它相当简单。不过,当谈到让它在 log(n) 中工作时,我完全被难住了,这就是我的问题所在。
【问题讨论】:
-
好问题。到目前为止你得到了什么?
-
这不是 SO 的工作方式。您至少需要提供您尝试过的内容。
-
顺便说一下,如果
k很大,线性解也可以很快,因为它只需要检查n/k元素。
标签: algorithm