【发布时间】:2011-05-02 17:13:44
【问题描述】:
有没有比二分查找更快的算法来搜索数组的排序值?
在我的例子中,我在 A 数组中有一个排序值(可以是任何类型值),如果我正在寻找的值在 A[n] and A[n+1] 的范围内,我需要返回 n
【问题讨论】:
-
如果你有量子计算机可以试试en.wikipedia.org/wiki/Grover%27s_algorithm :)
-
@David:虽然列表是排序的,所以 Grover 的算法比二分搜索差。 O(sqrt N) > O(lg N)
-
状态机在大数据上对我来说工作了一个数量级,但构建状态的复杂性/内存比排序大得多。
标签: c++ arrays algorithm search binary-search